@charset "UTF-8";
/*****************************
  cmn
*****************************/
.pagesec-product{
  background: #f2f2f2;
}

.productlist {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.productlist .product{
  background: #fff;
  box-shadow: 2px 2px #ccc;
  padding: 2rem 3rem 3rem;
}

.productttl{
  border-bottom: 1px solid #ccc;
  color: #05618C;
  font-size: 2.4rem;
  font-weight: 500;
  margin-bottom: 1rem;
  position: relative;
}
.productttl::before {
  content: "";
  background: linear-gradient(90deg, #05618C, #003C77);
  position: absolute;
  bottom: -1px;
  left: 0;
  height: 1px;
  width: 100px;
}

.productcontent{
  gap: 2rem
}
.product-img{
  width: 40%;
}
.productcontent .product-info{
  width: calc(60% - 2rem );
}

.product-img .thmslider img,
.product-img .thmslider-choice img{
  aspect-ratio: 3/2;
  object-fit: cover;
  height: auto;
  width: 100%;
}
.product-img .thmslider li a::after{
  aspect-ratio: 1/1;
  background: #003C77;
  content: "\f00e";
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font: var(--fa-font-solid);
  font-size: 2rem;
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
}
.product-img .thmslider-choice{
  margin-top: 1rem;
}
.product-img .thmslider-choice .slick-track{
  width: 100% !important;
}
.product-img .thmslider-choice li{
  width: calc(100% / 3) !important;
}

.product-info .tblbox1 .tblttl{
  width: 100px;
}
.product-info .tblbox1 .tblcontent{
  width: calc(100% - 100px);
}

.product-info .txtbox{
  border-top: 2px dashed #ccc;
  margin-top: 2rem;
  padding-top: 2rem;
}

@media only screen and (max-width: 1180px) {
}
@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 820px) {
  .productlist .product {
    padding: 1rem 2rem 2rem;
  }
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 767px) {
  .product-img,
  .productcontent .product-info,
  .product-info .tblbox1 .tblttl,
  .product-info .tblbox1 .tblcontent{
    width: 100%;
  }
}