@charset "utf-8";

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/


/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/


/* kv-hirakata
-----------------------------------------------------------------*/
.kv-hirakata{
  padding-top: 70px;  
}
.kv-hirakata img{
  max-width: none;
  width: 100%;  
}


/* tab navigation
-----------------------------------------------------------------*/
.nav-area-upper{
  padding: 120px 3.47vw 80px;  
}
.nav-area-bottom{
  padding: 120px 3.47vw 50px; 
}
.tab-nav{
  display: flex;
  max-width: 1160px;
  margin-inline: auto;
  border: 2px solid var(--orange);  
}
.tab-nav li{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  height: 85px;
  font-size: 2rem;
  font-weight: bold;
  color: var(--orange);
  line-height: 1;
  cursor: pointer;
  transition: .3s;  
}
.nav-area-upper .tab-nav li{
  padding-top: 10px; 
}
.nav-area-bottom .tab-nav li{
  padding-bottom: 10px; 
}
.tab-nav li.current,
.tab-nav li:hover{
  color: var(--light);
  background: var(--orange);
}
.tab-nav li span{
 transform: rotate(0.05deg); 
}
.nav-area-upper .tab-nav li span::after,
.nav-area-bottom .tab-nav li span::before{
  display: block;
  height: 22px;
  content: "";
  background: url(../img/hirakata/arw_down_orange.svg) no-repeat center;
}
.nav-area-upper .tab-nav li span::after{
   margin-top: 4px;
}
.nav-area-bottom .tab-nav li span::before{
  margin-bottom: 4px;
  transform: rotate(180deg); 
}
.nav-area-upper .tab-nav li.current span::after,
.nav-area-upper .tab-nav li:hover span::after,
.nav-area-bottom .tab-nav li.current span::before,
.nav-area-bottom .tab-nav li:hover span::before{
  background-image: url(../img/hirakata/arw_down_white.svg) 
}


/* tab-cont 共通
-----------------------------------------------------------------*/
.tab-cont .inner{
  max-width: calc(1160px + 6.94vw);
}
.tab-cont .intro{
  position: relative;
  margin-bottom: 80px;  
}
.tab-cont .intro h2{
  position: relative;
  z-index: 5;
  padding-top: 30px;
  margin-bottom: 30px;
  font-size: 8.8rem;
  line-height: 1;
  font-weight: 800;
}
.tab-cont .intro h2 span{
  font-size: 15.8rem;
  color: #E60044; 
}
.tab-cont .intro .txt-lead{
  position: relative;
  z-index: 5;
  font-size: 4rem;
  font-weight: 500;
  transform: rotate(0.05deg); 
}
.tab-cont .intro .txt{
  position: relative;
  z-index: 5;
  margin-top: 60px;
  text-align: center;
  line-height: 2.1;
  font-weight: 500;
  transform: rotate(0.05deg);   
}
.tab-cont .intro .ico{
  position: absolute;
  right: 0;
  top: 0;  
}



/* tab-cont01
-----------------------------------------------------------------*/

/* data ------------------------------*/
.tab-cont01 .data{
  padding-bottom: 120px;
}
.tab-cont01 .data h3{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 35px;
  line-height: 1;
  font-size: 3.6rem; 
  transform: rotate(0.05deg); 
}
.tab-cont01 .data h3::before,
.tab-cont01 .data h3::after{
  display: block;
  width: 30px;
  height: 50px;
  content: "";
  background:url(../img/hirakata/ico_line.svg) no-repeat;
  background-size: 100% auto;
}
.tab-cont01 .data h3::before{
  margin-right: 40px; 
}
.tab-cont01 .data h3::after{
  margin-left: 40px;
  transform: scale(-1, 1);  
}
.tab-cont01 .data .award-list{
  display: flex;
  margin-bottom: 120px;  
}
.tab-cont01 .data .award-list li{
  width: calc(100% / 3);  
}
.tab-cont01 .data .award-list img{
  max-width: none;
  width: 100%  
}
.tab-cont01 .layout-box{
	align-items: flex-start;
}
.tab-cont01 .layout-box + .layout-box{
  margin-top: 100px;  
}
.tab-cont01 .layout-box .txt-area{
  max-width: 470px;
  margin-right: 20px;  
}
.tab-cont01 .layout-box .txt-area > div{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;  
}
.tab-cont01 .layout-box .txt-area h4{
  font-size: 2.8rem;
  font-weight: 500;
  transform: rotate(0.05deg);  
}
.tab-cont01 .layout-box .txt-area h4 strong{
  font-size: 4.6rem;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0;
}
.tab-cont01 .data .layout-box .txt-area h4 strong{
  color: var(--orange); 
}
.tab-cont01 .safety .layout-box .txt-area h4 strong{
  color: #E60044; 
}
.tab-cont01 .layout-box .txt-area > div .ico{
  flex-shrink: 0;  
}
.tab-cont01 .layout-box .txt-area .txt{
  font-size: 1.8rem;
  line-height: 1.8;
  font-weight: 500;
  transform: rotate(0.05deg); 
}
.tab-cont01 .layout-box .txt-area > div.small-table{
	display: block;
	width: 100%;
}
.tab-cont01 .small-table h5{
	margin: 20px 0 5px;
	text-align: center;
	font-size: 2rem;
}
.tab-cont01 .small-table table{
	width: 100%;
	background: var(--light);
	font-size: 1.4rem;
}
.tab-cont01 .small-table table tr{
  display: flex;
  position: relative;  
}
.tab-cont01 .small-table table tr:first-child{
  background: #7E8085;
  color: var(--light); 
}
.tab-cont01 .small-table table tr:nth-child(n+3){
  border-top: 1px solid #E0E0E0;  
}
.tab-cont01 .small-table table tr th:nth-child(n+2)::before,
.tab-cont01 .small-table table tr td:nth-child(n+2)::before{
  position: absolute;
  left: 0;
  top: 10px;
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 20px);
}
.tab-cont01 .small-table table tr th:nth-child(n+2)::before{
  background: var(--light);
}
.tab-cont01 .small-table table tr td:nth-child(n+2)::before{
  background: #E0E0E0;  
}
.tab-cont01 .small-table table th,
.tab-cont01 .small-table table td{
  position: relative;
  display: flex;
  align-items: center;
  justify-content:center;    
  width: 50%;
  padding: 8px 5px;
  font-weight: 500;
  transform: rotate(0.05deg);  
}
.tab-cont01 .small-table table td{
	color: var(--dark);
}
.tab-cont01 .small-table table tr.feature tr{
  position: relative;  
}
.tab-cont01 .small-table table tr.feature::before{
  position: absolute;
  z-index: 10;
  top: -3px;
  left: -3px;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  border: solid 3px;
  border-radius: 6px;  
}
.tab-cont01 .small-table table tr.feature::before{
  border-color: #75B6EF;
}
.tab-cont01 .small-table table tr.feature::before{
  border-color: #E60044;
}
.tab-cont01 .small-table table tr.feature td{
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1;
}
.tab-cont01 .small-table table.rank tr.feature td:first-child{
  font-size: 2.5rem;
}
.tab-cont01 .small-table table.rank tr.feature td small{
  font-size: 1.4rem;  
}
.tab-cont01 .small-table table tr.feature td{
  background: #F6FCFF;
  color: #75B6EF;  
}
.tab-cont01 .small-table table tr.feature td{
  background: rgba(230,0,68,.1);
  color: #E60044;
}

.tab-cont01 .layout-box .data-area{
  max-width: 630px;
  padding: 45px 30px 40px;
}
.tab-cont01 .layout-box .data-area.data-pic{
	padding: 0;
}
.tab-cont01 .data .layout-box .data-area{
  background: #FAF9F4;  
}
.tab-cont01 .safety .layout-box .data-area{
  background: var(--light);
	color: var(--dark);  
}
.tab-cont01 .layout-box .data-area h4{
  margin-bottom: 25px;
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
  transform: rotate(0.05deg);    
}
.tab-cont01 .layout-box .data-area .note{
  margin-top: 15px;    
}
.tab-cont01 .data-area table{
  display: block;
  width: 100%;
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.5;  
}
.tab-cont01 .data-area table tbody{
  display: block; 
}
.tab-cont01 .data-area table tr{
  display: flex;
  position: relative;  
}
.tab-cont01 .data-area table tr:first-child{
  background: #7E8085;
  color: var(--light); 
}
.tab-cont01 .data-area table tr:nth-child(n+3){
  border-top: 1px solid #E0E0E0;  
}
.tab-cont01 .data-area table tr th:nth-child(n+2)::before,
.tab-cont01 .data-area table tr td:nth-child(n+2)::before{
  position: absolute;
  left: 0;
  top: 10px;
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 20px);
}
.tab-cont01 .data-area table tr th:nth-child(n+2)::before{
  background: var(--light);
}
.tab-cont01 .data-area table tr td:nth-child(n+2)::before{
  background: #E0E0E0;  
}
.tab-cont01 .data-area table th,
.tab-cont01 .data-area table td{
  position: relative;
  display: flex;
  align-items: center;
  justify-content:center;    
  width: 50%;
  padding: 15px 5px;
  font-weight: 500;
  transform: rotate(0.05deg);  
}
.tab-cont01 .data-area table.rank tr th,
.tab-cont01 .data-area table.rank tr td{
  width: calc(100% / 3);  
}
.tab-cont01 .data-area table.rank tr td:first-child{
  font-size: 1.8rem;
  line-height: 1;  
}
.tab-cont01 .data-area table.table02 tr th:nth-child(1),
.tab-cont01 .data-area table.table02 tr td:nth-child(1){
  width: 18%;
}
.tab-cont01 .data-area table.table02 tr th:nth-child(2),
.tab-cont01 .data-area table.table02 tr td:nth-child(2){
  width: 27%;
}
.tab-cont01 .data-area table.table02 tr th:nth-child(3),
.tab-cont01 .data-area table.table02 tr td:nth-child(3){
  width: 28%; 
}
.tab-cont01 .data-area table.table02 tr th:nth-child(4),
.tab-cont01 .data-area table.table02 tr td:nth-child(4){
  width: 27%; 
}
.tab-cont01 .data-area table tr.feature tr{
  position: relative;  
}
.tab-cont01 .data-area table tr.feature::before{
  position: absolute;
  z-index: 10;
  top: -3px;
  left: -3px;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  border: solid 3px;
  border-radius: 6px;  
}
.tab-cont01 .data .data-area table tr.feature::before{
  border-color: #75B6EF;
}
.tab-cont01 .safety .data-area table tr.feature::before{
  border-color: #E60044;
}
.tab-cont01 .data-area table tr.feature td{
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1;
}
.tab-cont01 .data-area table.rank tr.feature td:first-child{
  font-size: 2.5rem;
}
.tab-cont01 .data-area table.rank tr.feature td small{
  font-size: 1.4rem;  
}
.tab-cont01 .data .data-area table tr.feature td{
  background: #F6FCFF;
  color: #75B6EF;  
}
.tab-cont01 .safety .data-area table tr.feature td{
  background: rgba(230,0,68,.1);
  color: #E60044;
}
.tab-cont01 .data-area table.table02 tr td:nth-child(1) em{
  display: block;
  font-style: normal;
  font-size: 1.2rem;
  margin-top: 5px;  
}


/* safety ------------------------------*/
.tab-cont01 .safety{
  padding: 120px 0;
  background: url(../img/hirakata/bg_blue.webp) no-repeat center;
  background-size: cover;
	color: var(--light);
}
.tab-cont01 .safety .layout-box .txt-area > div{
	position: relative;
}
.tab-cont01 .safety .layout-box .txt-area > div .ico04{
	position: absolute;
	right: 0;
	bottom: 0;
}


/* tab-cont02
-----------------------------------------------------------------*/
.tab-cont02{
	display: none;
}
.tab-cont02 .cat h3{
  display: flex;
  align-items: center;
  max-width: calc(1160px + 6.94vw);
  width: 100%;
  padding: 0 3.47vw;
  margin: 0 auto 50px;
  color: var(--light);
  font-size: 3.2rem;
  line-height: 1;
  transform: rotate(0.05deg);  
}
.tab-cont02 .cat h3 .ttl{
  margin-left: 10px;  
}
.tab-cont02 .support-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start; 
  max-width: 1126px;
  margin-inline: auto;
  transform: rotate(0.05deg);  
}
.tab-cont02 .support-list > div{
  max-width: 550px;
  width: calc(50% - 10px);
  border: 2px solid var(--dark);
  background: var(--light);  
}
.tab-cont02 .support-list > div:nth-child(n+3){
  margin-top: 25px; 
}
.tab-cont02 .support-list dt{
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 94px;
  padding: 5px 30px;
  font-size: 2.4rem;
  line-height: 1.2;
  font-weight: bold; 
  cursor: pointer;  
}
.tab-cont02 .support-list dt small{
  display: block;
  font-size: 1.8rem;  
}
.tab-cont02 .support-list dt strong{
  font-weight: bold;
  color: #E60044; 
}
.tab-cont02 .support-list dt::after{
  display: block;
  content: "";
  width: 34px;
  height: 36px;
  background: url(../img/hirakata/ico_btn_down.svg) no-repeat;
  background-size: 100% auto;  
}
.tab-cont02 .support-list dt.active::after{
  background-image: url(../img/hirakata/ico_close.svg);
}
.tab-cont02 .support-list dd{
  display: none;
  padding: 0 30px 30px;
  font-size: 1.8rem;
  font-weight: 500; 
}
.main-slider-area {
	width: 100%;
  overflow: hidden;
  position: relative;
	margin-bottom: 50px;
}
.loopSlider {
  overflow: hidden;
  position: relative;
	width: 2100px;
	cursor: grab;
}
.loopSlider.is-dragging {
  cursor: grabbing;
}
.main-slider {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
  will-change: transform;
	pointer-events: none;
}
.main-slider li {
	flex-shrink: 0;
  flex: 0 0 auto;
  width: 420px;
	pointer-events: auto;
}
.main-slider .slider-item{
	position: relative;
	width: 420px;
	min-height: 450px;
	padding: 45px 10px 20px; 
	border: solid #231815;
	border-width: 2px 1px;
	background: var(--light);
}
.main-slider .slider-item h4{
	margin-bottom: 22px;
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.6;
	transform: rotate(0.05deg); 
}
.main-slider .slider-item h4 strong{
	color: #E60044;
}
.main-slider .slider-item .thumb{
	text-align: center;
}
.main-slider .slider-item .thumb img {
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
}
.main-slider .slider-item .thumb a{
  position: static;
  width: 100%;
  display: block;  
}
.main-slider .slider-item a{
	position: absolute;
	right: 24px;
	bottom: 24px;	
	z-index: 100;
	width: 40px;
	pointer-events: auto;
}
.baloon-slider-area{
	width: 100%;
	overflow: hidden;
	margin-bottom: 120px;
}
.children .baloon-slider{
	width: 4864px;
}
.children .baloon-slider2{	
  width: 4864px;
}
.senior .baloon-slider2{
  width: 4658px;
}
.baloon-slider p,
.baloon-slider2 p{
	padding: 0 5px;
}


/* children ------------------------------*/
.tab-cont02 .children{
  padding: 140px 0;
  background: url(../img/hirakata/bg_orange.webp) no-repeat center;
  background-size: cover;
}


/* senior ------------------------------*/
.tab-cont02 .senior{
  padding: 140px 0;
  background: url(../img/hirakata/bg_blue.webp) no-repeat center;
  background-size: cover; 
}


/* modal
-----------------------------------------------------------------*/
.modaal-content-container {
	max-width: 500px;
	margin: 0 auto;
}
.modaal-close{
	opacity: 0;
	curcor: default;
}
.modal{
	display: none;
}
.modal-cont{
	position: relative;
	max-width: 500px;
	margin-inline: auto;
	padding: 45px 30px 60px; 
	border: 2px solid #231815;
	background: var(--light);	
}
.modal-cont h4{
	margin-bottom: 22px;
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.6;
	transform: rotate(0.05deg); 
}
.modal-cont h4 strong{
	color: #E60044;
}
.modal-cont .thumb{
	margin-bottom: 22px;
}
.modal-cont .txt{
	font-size: 1.8rem;
	text-align: justify;
	font-weight: 500;
	transform: rotate(0.05deg); 
}
.modal-cont .btn-close{
	position: absolute;
	right: 24px;
	top: 24px;
	width: 40px;
	cursor: pointer;	
}












/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {

/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/

/* kv-hirakata
-----------------------------------------------------------------*/
	.kv-hirakata{
		padding-top: 0;  
	}


/* tab navigation
-----------------------------------------------------------------*/
	.nav-area-upper{
		padding: 60px 3.47vw 50px;  
	}
	.nav-area-bottom{
		padding: 120px 3.47vw 50px; 
	}
	.tab-nav li{
		height: 70px;
		font-size: 1.3rem;
		line-height: 1.3;
		text-align: center;  
	}
	.nav-area-upper .tab-nav li{
		padding-top: 8px; 
	}
	.nav-area-bottom .tab-nav li{
		padding-bottom: 8px; 
	}
	.tab-nav li:hover{
		color: var(--orange);
		background: var(--light);
	}
	.tab-nav li.current{
		color: var(--light);
		background: var(--orange);
	}
	.nav-area-upper .tab-nav li span::after,
	.nav-area-bottom .tab-nav li span::before{
		height: 16px;
		background-size: 18px auto;
	}
	.nav-area-upper .tab-nav li span::after{
		 margin-top: 4px;
	}
	.nav-area-bottom .tab-nav li span::before{
		margin-bottom: 4px; 
	}
	.nav-area-upper .tab-nav li:hover span::after,
	.nav-area-bottom .tab-nav li:hover span::before{
		background-image: url(../img/hirakata/arw_down_orange.svg);
	}
	.nav-area-upper .tab-nav li.current span::after,
	.nav-area-bottom .tab-nav li.current span::before{
		background-image: url(../img/hirakata/arw_down_white.svg) 
	}


/* tab-cont 共通
-----------------------------------------------------------------*/
	.tab-cont .intro{
		position: relative;
		margin-bottom: 60px;  
	}
	.tab-cont .intro h2{
		margin-bottom: 20px;
		padding-top: 10px;
		font-size: 3.8rem;
	}
	.tab-cont .intro h2 span{
		font-size: 6.8rem;
	}
	.tab-cont .intro .txt-lead{
		font-size: 2rem;
	}
	.tab-cont .intro .txt{
		margin-top: 30px;
		line-height: 2.4;
		font-size: 1.3rem;
	}



/* tab-cont01
-----------------------------------------------------------------*/

/* data ------------------------------*/
	.tab-cont01 .data{
		padding-bottom: 70px;
	}
	.tab-cont01 .data .intro .ico{
		width: 130px;
	}
	.tab-cont01 .data h3{
		margin-bottom: 20px;
		line-height: 1.4;
		font-size: 1.9rem;
		text-align: center; 
	}
	.tab-cont01 .data h3::before,
	.tab-cont01 .data h3::after{
		width: 25px;
		height: 42px;
	}
	.tab-cont01 .data h3::before{
		margin-right: 30px; 
	}
	.tab-cont01 .data h3::after{
		margin-left: 30px;
	}
	.tab-cont01 .data .award-list{
		width: calc(100% + 6.94vw);
		margin-left: -3.47vw;
		flex-wrap: wrap;
		margin-bottom: 70px;  
	}
	.tab-cont01 .data .award-list li{
		width: 50%;  
	}
	.tab-cont01 .data .award-list li:nth-child(n+3){
		width: 100%;
	}
	.tab-cont01 .layout-box{
		display: block;
	}
	.tab-cont01 .layout-box + .layout-box{
		margin-top: 60px;  
	}
	.tab-cont01 .layout-box .txt-area{
		max-width: none;
		margin: 0 0 30px;  
	}
	.tab-cont01 .layout-box .txt-area > div{
		position: relative;
		margin-bottom: 30px;  
	}
	.tab-cont01 .layout-box .txt-area h4{
		font-size: 2rem;
		line-height: 1.6;
	}
	.tab-cont01 .layout-box .txt-area h4 strong{
		font-size: 4rem;
	}
	.tab-cont01 .layout-box .txt-area h4 strong.three{
		line-height: .7;
	}
	.tab-cont01 .layout-box .txt-area > div .ico{
		position: absolute;
		right: 0;  
	}
	.tab-cont01 .data .layout-box .txt-area > div .ico02{
		top: 10px;
	}
	.tab-cont01 .data .layout-box .txt-area > div .ico03{
		bottom: 20px;
	}
	.tab-cont01 .data .layout-box .txt-area > div .ico04{
		bototm: 0;
	}
	.tab-cont01 .safety .layout-box .txt-area > div .ico{
		bototm: 0;
	}
	.tab-cont01 .layout-box .txt-area > div.small-table{
		display: none;
	}
	.tab-cont01 .small-table h5 {
		font-size: 1.8rem;
	}
	.tab-cont01 .small-table table{
		font-size: 1.2rem;
		padding: 5px;
	}
  .tab-cont01 .small-table table tr.feature td{
		font-size: 1.2rem;
	}
	.tab-cont01 .small-table table tr.feature td .small{
		font-size: 1.2rem;
	}
	.tab-cont01 .layout-box .txt-area .txt{
		font-size: 1.3rem;
		text-align: justify;
	}
	.tab-cont01 .layout-box .data-area{
		max-width: none;
		padding: 35px 15px 25px;
	}
	.tab-cont01 .layout-box .data-area h4{
		margin-bottom: 15px;
		font-size: 1.8rem;
	}
	.tab-cont01 .layout-box .data-area .note{
		margin-top: 20px;    
	}
	.tab-cont01 .layout-box .data-area .graph-area .graph{
		position: relative;
	}
	.tab-cont01 .layout-box .data-area .graph-area .graph .num{
		position: absolute;
		left: 0;
		top: 0;
		width: 57px;
	}
	.tab-cont01 .layout-box .data-area .graph-area .graph .js-scrollable {
		display: block;
		margin-left: 30px;
		padding-top: 20px;
		padding-bottom: 5px;
	}
	.tab-cont01 .layout-box .data-area .graph-area .graph .js-scrollable img{
		max-width: none;
		width: auto;
		height: 310px;
	}
	.tab-cont01 .layout-box .data-area .graph-area .note{
		width: 162px;
	}
	.tab-cont01 .data-area table tr th:nth-child(n+2)::before,
	.tab-cont01 .data-area table tr td:nth-child(n+2)::before{
		position: absolute;
		left: 0;
		top: 10px;
		content: "";
		display: block;
		width: 1px;
		height: calc(100% - 20px);
	}
	.tab-cont01 .data-area table th,
	.tab-cont01 .data-area table td{
		padding: 12px 5px;
	}
	.tab-cont01 .data-area table.rank.table01 tr th:first-child,
	.tab-cont01 .data-area table.rank.table01 tr td:first-child{
		width: 30%;
	}
	.tab-cont01 .data-area table.ran.table01k tr th,
	.tab-cont01 .data-area table.rank.table01 tr td{
		width: 40%;  
	}
  .tab-cont01 .data-area table.table02 tr th:nth-child(1),
  .tab-cont01 .data-area table.table02 tr td:nth-child(1){
    width: 20%;
  }
  .tab-cont01 .data-area table.table02 tr th:nth-child(2),
  .tab-cont01 .data-area table.table02 tr td:nth-child(2){
    width: 22%;
  }
  .tab-cont01 .data-area table.table02 tr th:nth-child(3),
  .tab-cont01 .data-area table.table02 tr td:nth-child(3){
    width: 30%; 
  }
  .tab-cont01 .data-area table.table02 tr th:nth-child(4),
  .tab-cont01 .data-area table.table02 tr td:nth-child(4){
    width: 28%; 
  }
  .tab-cont01 .data-area table.rank tr td:first-child {
    font-size: 1.3rem;
  }
  .tab-cont01 .data-area table.rank tr.feature td:first-child {
    font-size: 1.8rem;
  }
	.tab-cont01 .data-area table th,
  .tab-cont01 .data-area table td{
		font-size: 1.3rem;
	}
	.tab-cont01 .data-area table tr.feature td{
		font-size: 1.3rem;
	}
	.tab-cont01 .data-area table tr.feature td .small{
		font-size: 1.3rem;
	}
  .tab-cont01 .data-area table.table02 tr td:nth-child(1) em{
    width: calc(100% + 10px);
    margin-left: -5px;
    font-size: 1rem;
  }


/* safety ------------------------------*/
	.tab-cont01 .safety{
		padding: 50px 0 60px;
	}
	.tab-cont01 .safety .intro .ico{
		right: -10px;
		width: 140px;
	}
	

/* tab-cont02
-----------------------------------------------------------------*/
	.tab-cont02 .intro .ico{
		top: -30px;
		width: 116px;
	}
	.tab-cont02 .cat h3{
		margin: 0 auto 25px;
		font-size: 2.4rem;
	}
	.tab-cont02 .cat h3 .ico{
		width: 24px;
	}
	.tab-cont02 .cat h3 .ttl{
		margin-left: 5px;  
	}
	.tab-cont02 .support-list{
		display: block;
	}
	.tab-cont02 .support-list > div{
		max-width: none;
		width: 100%;
	}
	.tab-cont02 .support-list > div:nth-child(n+2){
		margin-top: 10px; 
	}
	.tab-cont02 .support-list dt{
		height: 70px;
		padding: 5px 20px;
		font-size: 1.6rem;
		line-height: 1.4;  
	}
	.tab-cont02 .support-list dt small{
		font-size: 1.2rem;  
	}
	.tab-cont02 .support-list dd{
		padding: 0 20px 20px;
		font-size: 1.4rem;
		text-align: justify;
	}
	.main-slider-area {
		margin-bottom: 40px;
	}
	.loopSlider {
		width: 1400px;
		 touch-action: pan-y;
	}
	.main-slider li {
		width: 280px;
	}
	.main-slider .slider-item{
		width: 280px;
		min-height: 300px;
		padding: 30px 20px 20px; 
	}
	.main-slider .slider-item h4{
		margin-bottom: 15px;
		font-size: 1.8rem;
	}
	.main-slider .slider-item a{
		right: 0;
		bottom: 0;
		padding: 15px;
		width: 70px;	
	}
	.baloon-slider-area{
		margin-bottom: 60px;
	}
	.children .baloon-slider{
    width: 1861px;
  }
  .children .baloon-slider2{
    width: 1861px;
  }
  .senior .baloon-slider2{
    width: 1861px;
  }
	.baloon-slider p,
	.baloon-slider2 p{
		padding: 0 5px;
	}


/* children ------------------------------*/
	.tab-cont02 .children{
		padding: 70px 0;
	}


/* senior ------------------------------*/
	.tab-cont02 .senior{
		padding: 70px 0;
	}


/* modal
-----------------------------------------------------------------*/
	.modal-cont{
		padding: 30px 20px 40px; 	
	}
	.modal-cont h4{
		margin-bottom: 15px;
		font-size: 1.8rem;
	}
	.modal-cont .thumb{
		margin-bottom: 15px;
	}
	.modal-cont .txt{
		font-size: 1.3rem;
	}
	.modal-cont .btn-close{
		right: 15px;
		top: 15px;
	}



}