@charset "UTF-8";
#wrapper{
	overflow: hidden;
	font-size: 15px;
	line-height: 1.6;
	background-color: transparent;
	font-weight: 400;
	color: #222;

}
html,body{
	height: auto;
}
a img:hover{
	opacity:0.7;
	transition:0.3s;
}
#loader-bg {
  background:#fff;
}
a:link{
	text-decoration: underline;
	color: #222;
}
a:visited{
	text-decoration: underline;
	color: #222;
}
a:hover{
	text-decoration: none;
	color: #555;
}
.main{
	margin-bottom: 5em;
	padding-top: 10em;
}
.main h2{
	
	font-weight: 500;
	text-align: center;
	font-size: 18px;
	margin-bottom: .5em;
}
.main h3{
	
	font-weight: 600;
	text-align: center;
	font-size: 30px;
	margin-bottom: 3em;
}
.main h3 span.line{
	background:linear-gradient(transparent 70%, #88bb93 70%);
}
.main h2 br.sp{
	display: none;
}
.mainTx{
	margin-bottom: 15em;
}

.mainTx p.im{
	width: 90%;
	margin: 0 auto 5em;
}

.mainTx p.tx{
	line-height: 2.2;
	font-size: 16px;
	width: 80%;
	margin: 0 auto 5em;
}
.mvArea p.tt{
	font-size: 14px;
	text-align: center;
	padding-top: .5em;
}
.mvArea p.tt br{
	display: none;
}
.mv{
	
}
.mv{
	position:relative;
}
.mv img{
	width:100%;
	height:auto;
}
.mv p.play{
	position:absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width:8%;
}
.report{
	padding-bottom: 15em;
}
.report .conBox{
	margin-bottom: 10em;
}
.report .conBox:last-child{
	margin-bottom: 0;
}
.contentsArea{
	max-width: 1100px;
	width: 94%;
	margin: 0 auto;
}
.contentsAreaMax{
	max-width: 1300px;
	width: 100%;
	margin: 0 auto 8em;
}
.contentsAreaMax img{
	width: 100%;
	height: auto;
}
.titleArea{
	
	font-weight: 600;
	padding: 5em 2em;
	border-bottom: 1px solid #a9a9a9;
	border-top: 1px solid #a9a9a9;
	font-size: 24px;
	margin-bottom: 5em;
	line-height: 1.8;
	text-align: center;
}
.titleArea span{
	font-size: 84%;
	display: block;
}
.titleArea br.sp{
	display: none;
}
.txArea{
	width: 90%;
	margin: 0 auto;
}
.txArea p.tx{
	line-height: 2.4;
	font-size: 15px;
	margin-bottom: 3em;
}
.txArea p.tx.end{
	margin-bottom: 0;
}
.txArea p.im img{
	
}
.txArea .sub{
	width: 80%;
	margin: 0 auto;
	padding: 3em 0 6em;
}
.txArea .sub.end{
	padding: 3em 0 0;
}
.txArea ul.list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 4%;
	row-gap:2em;
	width: 80%;
	margin: 0 auto;
	padding: 3em 0 6em;
}
.txArea ul.list.end{

	padding: 3em 0 0;
}
.txArea ul.list li{
	width: 48%;
}
.pro .contentsArea{
	border-top: 1px solid #eee;
	padding-top: 15em;
}
.proArea{
	width: 80%;
	margin: 0 auto;
}
.pro p.proName{
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 3em;
}
.pro p.proName br.sp{
	display: none;
}
.pro p.mainIm{
	width: 80%;
	margin: 0 auto 5em;
		
}
.pro dl{
	display: flex;
	flex-wrap: wrap;
	row-gap:2em;
}
.pro dt{
	width: 25%;
	text-align: center;
}
.pro dt span{
	background-color: #555;
	color: #fff;
	display: block;
	padding: .2em;
}
.pro dd{
	width: 75%;
	padding-left: 2em;
	padding: .2em 0 .2em 2em;
}
.pro dd.full{
	width: 100%;
	padding:0;
}
.pro p.proTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333333;
	font-size: 22px;
	letter-spacing: .1em;
	font-weight: 500;
	margin-bottom: 5em;
}

.pro p.proTitle::before,
.pro p.proTitle::after {
  content: '';
  height: 1px;
  background-color: #222;
  flex-grow: 1;
}
.pro p.proTitle::before {
  margin-right: 15px;
}
.pro p.proTitle::after {
  margin-left: 15px;
}

.proArea ul{
	display: flex;
	flex-wrap: wrap;
	column-gap: 2%;
	row-gap:1.5em;
	margin-bottom: 10em;
}
.proArea ul li{
	width: 23.5%;
	position: relative;
}
.pro{
	padding-bottom: 15em;
}
.pro .subBox{
	margin-bottom: 5em;
}
.pro .subBox:last-child{
	margin-bottom: 0;
}
.photo{
	padding-top: 8em;
}
.photo p.pp{
	font-size: 13px;
	line-height: 1.4;
}
.photo p.btt{
	font-size: 12px;
	text-align:center;
	text-decoration: underline;
	cursor: pointer;
	padding-top: .5em;
}
.tooltip-box {
  display: none;
  position: absolute;
  top:-2em;
  left: 2em;
  width: 100%;
  padding: 10px 15px;
background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  font-size: 13px;
  line-height: 1.5;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  z-index: 100;
}
.subBox p.subTitle{
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 1.5em;
}
.subBox p.subTitle span{
	border-bottom: 1px solid #222;
}
.subBox p.subTx{
	font-size: 14px;
	line-height: 1.8;
}

.specTable{
	
}
.specTable p.att{
	padding-top: 1em;
	font-size: 12px;
	display: none;
}
.specTable p.aa{
	padding-top: .5em;
	font-size: 12px;
}
.table_box{
	overflow-x: auto;
	width:100%;
	-webkit-overflow-scrolling: touch;
	padding-bottom: .5em;
}
.table_box table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}
.table_box th, .table_box td {
	vertical-align: middle;
	padding: 1em;
	border: 1px solid #dbdbdb;
	color: #222;
	font-size: 14px;
	text-align: center;
	
}
.table_box th {
	font-weight: normal;
	background-color: #f3f3f3;
}
.table_box td {

}
.table_box .sticky {
	position: sticky;
	top: 0;
	left: 0;
	background: none;
	border-left: none;
	border-right: none;
}
.table_box .sticky::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-left: 1px solid #dbdbdb;
	border-right: 1px solid #dbdbdb;
	background: #f3f3f3;
	z-index: -1;
}
.table_box th.name{
	font-weight: 500;
}
.table_box th.pro_name{
	font-weight: 500;
	line-height: 1.4;
}
.table_box::-webkit-scrollbar{
 height: 5px;
 
}
.table_box::-webkit-scrollbar-track{background: #eee;}
.table_box::-webkit-scrollbar-thumb{background: #666;}

.inView{
	position: relative;
	top: 4vw;
	opacity: 0;
	-webkit-transition: top 1.2s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
	transition: top 1.2s cubic-bezier(0.33, 1, 0.68, 1), opacity 1.0s;
}
.inView.view{opacity: 1;top: 0;}

