@charset "utf-8";
/*家電・補聴器-homeelectronics*/
.ib{
	display: inline-block;
}
.lead01{
	display:block;
	max-width:750px;
}

.lead01_sp{
	display:none;
}



#section01 ul li .ttl01 {
	background-color: #cce3f2;
	height: 30px;
	width: 100%;
	margin-bottom:10px;
}

ul.imgBox02{
	width: 100%;
	margin: 0 0 20px 0;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
}
ul.imgBox02 > li{
	width: 32%;
	margin-bottom: 14px;
	padding: 0;
	position: relative;
}
ul.imgBox02 > li .txt01{
	position: absolute;
	bottom: 2px;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
}
ul.imgBox02 > li p.txt02{
	margin: 0 auto 0;
	text-align: center;
}

@media only screen and (max-width:640px) {
ul.imgBox02{
	width: 100%;
	margin: 0 0 20px 0;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
}
ul.imgBox02 > li{
	width: 48.5%;
	margin-bottom: 14px;
	padding: 0;
}
}
.imgBox02.cf li .txt01 {
	font-size: 86.66%;
	text-align: center;
}
.imgBox02 li img{
	display:block;
}






#section01 .contentBox01 li .txtBox01.cf li {
	float: left;
	width: 24%;
	margin-right: 1.33%;
	margin-bottom:20px;
}

#section01 .contentBox01 li .txtBox01.cf li:last-child {
	margin-right: 0;
}
#section01 .contentBox01 li .txtBox01.cf li .txt01 {
	color: #1d3994;
	font-weight: bold;
}
#section01 .contentBox01 li .txtBox01.cf .matchHeight .txt02 {
	font-size: 86.66%;
}

#section01 .contentBox02 li {
	float: left;
	width: 24%;
	margin-right: 1.33%;
	margin-bottom:20px;
}
#section01 .contentBox02 li:last-child {
	float: left;
	width: 24%;
	margin-right:0;
	margin-bottom:20px;
}

#section01 .contentBox02.cf li .txt02 {
	font-size: 86.66%;
}
#section02 {
	margin-bottom:30px;
}

#section02 #table01{
	border-left-width: 1px;
	border-top-width: 1px;
	border-left-style: solid;
	border-top-style: solid;
	border-left-color: #000000;
	border-top-color: #000000;
}
#section02 #table01 tr th {
	font-size: 113.33%;
	text-align: center;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #000000;
	border-bottom-color: #000000;
	padding: 5px;
	background-color: #f9f5f1;
}
#section02 #table01 tr td {
	font-size: 106.66%;
	text-align: center;
	padding:5px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #000000;
	border-bottom-color: #000000;
}

#section02 #table01 tr td span {
	font-size: 93.75%;
}
.imgBox02 > li > img.sec2_img_01{
	position: absolute;
	top: -80px;
	right: -100px;
	margin: auto;
}



#section03 .contentBox02.cf li {
	float: left;
	margin-right: 0.66%;
	margin-left: 0.66%;
	width: 48.67%;
}

.lead01.mb10 {
	width: 100%;
}
#section02 .table_wrap1 #table01 tr .color {
	background-color: #f4ebe2;
}
#section03 #ttl03 {
	background-image: url(../images/generation/bg_01.gif);
	background-repeat: repeat-x;
	height: 40px;
	margin-bottom:15px;
}
#section03 #ttl03 img {
	display: block;
	margin: auto;
	padding-top: 10px;
	
}

.imgBox01{
	display:block;
	max-width:750px;
}

.imgBox01_sp{
	display:none;
}


@media only screen and (max-width:640px) {
.lead01{
	display:none;
}

.lead01_sp{
	display:block;
	max-width:460px;
}

.imgBox02.cf li {
	float: left;
	width: 47.4%;
	margin-right: 1.3%;
	margin-left: 1.3%;
	margin-bottom: 10px;
}

#section01 .contentBox01 li .txtBox01.cf li {
	float: left;
	width: 47%;
	margin-right: 3%;
	margin-bottom:20px;
}

#section01 .contentBox01 li .txtBox01.cf li:last-child {
	float: left;
	width: 47%;
	margin-right: 3%;
	margin-bottom:20px;
}
#section01 .contentBox02 li {
	float: left;
	width: 48%;
	margin-right: 2%;
	margin-bottom:20px;
}
#section01 .contentBox02 li:last-child {
	float: left;
	width: 48%;
	margin-right: 2%;
	margin-bottom:20px;
}
#section02 .table_wrap1{
    box-sizing: border-box;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
}
#section03 .ttl01 img {
	display: block;
	margin: auto;
	width:90%;
	max-width:368px;
	padding-top: 10px;
}
#section03 .contentBox02.cf li {
	float: none;
	margint: 0 0 10px;
	width: 100%;
}
.imgBox01{
	display:none;
}

.imgBox01_sp{
	display:block;
	margin:auto;
}
#section03 #ttl03 img {
	display: block;
	margin: auto;
	padding-top: 10px;
	width:90%;
	max-width:368px;
}
}


.ab_box{
	width: 100%;
	margin: 0;
}
.ab_box img{
	max-width:100%;
	position: absolute;
	top: -80px;
	left: 0;
	right: 0;
	margin: auto;
}
.ab_box .animation{
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-duration: 1.5s;
}
.ab_box .keyframe3{
	animation-name: anim_s;
	transform: rotate(10deg);
	animation-duration: 5s;
}

@keyframes anim_s {
50% {
	transform: rotate(-10deg);
}
100% {
	transform: rotate(10deg);
}
}
@media only screen and (max-width:640px) {
.ab_box img{
	max-width:100%;
	position: absolute;
	top: -80px;
	left: 0;
	right: 0;
	margin: auto;
}
.ab_box .animation{
	animation:none;
}
.ab_box .keyframe3{
	animation:none;
	transform: rotate(0deg);
}
}


.balloon{
	width: 100%;
}
.balloon img{
	max-width:86%;
	position: absolute;
	left: 10px;
	bottom: 10px;
	margin: auto;
	z-index: 2;
}
.balloon .voicecomment {
	transform-origin: center bottom;
	animation: balloonAnime 3s ease-out 0s infinite normal both;
}
@keyframes balloonAnime {
	0% { transform: scale(1); }
	10% { transform: scale(1.1); }
	20% { transform: scale(1); }
	30% { transform: scale(1.2); }
	40% { transform: scale(1); }
	100% { transform: scale(1); }
}
@media only screen and (max-width:640px) {
.balloon .voicecomment {
	transform-origin: center bottom;
	animation: none;
}
}

/*2022/03019追加*/
#entrust .panacard_area {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto 30px;
  padding: 0;
  border: 0px solid #707070;
}

#entrust .panacard_area .panacard_set {
  width: 100%;
  margin: 0 0 10px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#entrust .panacard_area .panacard_set li {
  width: 49%;
}
#entrust .panacard_area .panacard_set li figure {
	margin: 0;
}
#entrust .panacard_area .panacard_set li figure img{
	width: 100%;
}
#entrust .panacard_area .panacard_set li .title {
  font-size: clamp(18px, 2.2vw, 24px);
  color: #DC000C;
  line-height: 1.2 !important;
  margin: 0 0 10px 0;
  font-family: 'genjulp-b',sans-serif;
  display: block;
  text-align: left;
}

#entrust .panacard_area .panacard_set li p {
  margin-bottom: 10px;
}

#entrust .panacard_area .panacard_set li .text {
  width: 100%;
  margin: 0;
  padding: 20px 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #F4F4F4;
}

#entrust .panacard_area .panacard_set li .text p {
  margin-bottom: 0;
}

#entrust .panacard_area .panacard_set li .text .text_set {
  width: 100%;
}

#entrust .panacard_area .panacard_set li .text .text_set th {
  width: 40%;
}

#entrust .panacard_area .panacard_set li .text .text_set td {
  width: 60%;
}
#entrust .panacard_area .text{
	width: 100%;
	margin: 0;
	padding: 20px 30px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #F4F4F4;
}
#entrust .panacard_area .text table.text_set tr th {
  width: 40%;
}
#entrust .panacard_area .text table.text_set tr td {
  width: 60%;
}



@media screen and (max-width: 640px) {
  #entrust .panacard_area .panacard_set {
    width: 100%;
    margin: 0 0 10px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #entrust .panacard_area .panacard_set li {
    width: 100%;
    margin: 0 0 20px 0;
  }
  #entrust .panacard_area .panacard_set li .title {
	  font-size: clamp(18px, 2.2vw, 24px);
    color: #DC000C;
    line-height: 1.2 !important;
    margin: 0 0 20px 0;
    font-family: 'genjulp-b',sans-serif;
    display: block;
    text-align: center;
  }
  #entrust .panacard_area .panacard_set li p {
    margin-bottom: 10px;
  }
  #entrust .panacard_area .panacard_set li .text {
    width: 100%;
    margin: 0;
    padding: 10px 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-color: #F4F4F4;
  }
  #entrust .panacard_area .panacard_set li .text p {
    margin-bottom: 0;
  }
  #entrust .panacard_area .panacard_set li .text .text_set {
    width: 100%;
  }
  #entrust .panacard_area .panacard_set li .text .text_set th {
    width: 50%;
  }
  #entrust .panacard_area .panacard_set li .text .text_set td {
    width: 50%;
  }
}