﻿#cms_2-g .cate_img1 {
     max-height: 450px;
}
#cms_2-g .cate_img1 img{
    width: 100%!important;
    height: auto!important;
}
#cms_2-g .cate_title {
	line-height: 1;	 
	font-size: 2.5em;
}
#cms_2-g .cate_title_wrap{position: relative;z-index: 0;}
#cms_2-g .cate_title_wrap::before {
	content: '';
    position: absolute;
    display: inline-block;
    width: 1px;
    height: 100%;
	top: 20px;
    left: 0px;
    background-color: currentColor;
    opacity: 0.15;
    z-index: -1;
}

.cms_2-g .box_wrap{box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;}
.cms_2-g .swiper-slide{height: auto!important;}
.cms_2-g .cate_box {height: 100%;min-height: 350px;}

.cms_2-g .box_item_img img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    object-fit: cover;
    border-radius: 0 0 5px 5px;   
}
.cms_2-g .box_txt1{
    color: #222!important;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 15;
	overflow: hidden;
}
.cms_2-g .swiper-pagination {
    bottom: -40px!important;
    z-index: 0;
    text-align: right;
    width: 80%!important;
    left: auto!important;
    right: 0;
}
.cms_2-g .swiper-pagination-bullet {
  border-radius: inherit;
  margin: 0!important;
  width: 45px;
  height: 3px;
  background:#6a6a6a;
  opacity: 0.19;	
}
.cms_2-g .swiper-pagination-bullet-active {
  background: #a9a9a9;
  opacity: 1;
}
.cms_2-g .swiper-button-prev,.cms_2-g .swiper-button-next{
	bottom: -60px;
    top: auto;    
    width: auto!important;
    height: auto!important;
    font-size: 30px;
}
.cms_2-g .swiper-button-prev{
	left: 10px;
}
.cms_2-g .swiper-button-next{
	left: 35px;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#cms_2-g .cate_img1 {max-height: 300px;}

.cms_2-g .cate_box {min-height: 250px;}
.cms_2-g .box_txt1 {-webkit-line-clamp: 7;}
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#cms_2-g .cate_title {font-size: 1.8em;}

.cms_2-g .box_wrap {margin-bottom: 25%;}
.cms_2-g .swiper-pagination-bullet {width: 30px;}
.cms_2-g .box_item_img {border-radius: 5px 5px 0 0;padding-top: 63%;}
.cms_2-g .cate_box {min-height: 100%;}
.cms_2-g .box_txt1 {-webkit-line-clamp: 4;}
}
#cms_2-e .cate .cate_title span::after{
	width: 100%;
	height: 1px;
	position: absolute;
	content: "";
	top: 100%;
	z-index: 99;
	left: 0;
}
#cms_2-e .cate:last-of-type{
	margin-bottom: 0;
	background-image: none;
}
#cms_2-e .box_title{
	position: relative;
}
#cms_2-e .box_title span{
	position: relative;
	z-index: 1;
}
#cms_2-e .box_title::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	background-color: #ccc;
	top: 12px;
	left: 0;
	z-index: 0;
}
.cms_2-e .box_title{
	position: relative;
}
.cms_2-e .box_title span{
	position: relative;
	z-index: 1;
}
.cms_2-e .box_title::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	background-color: #ccc;
	top: 12px;
	left: 0;
	z-index: 0;
}
@media screen and (max-width: 667px){
	#cms_2-e .box_title::after{
		content: "";
		position: absolute;
		width: 1px;
		height: 40px;
		background-color: #ccc;
		top:100%;
		left: 50%;
		transform: translate(0,-100%);
		z-index: 0;
	}
	.cms_2-e .box_title::after{
		content: "";
		position: absolute;
		width: 1px;
		height: 40px;
		background-color: #ccc;
		top:100%;
		left: 50%;
		transform: translate(0,-100%);
		z-index: 0;
	}
}
#cms_2-c .box_item{
	word-break: break-all;
}
.cms_2-c .cate_box{
    justify-content: flex-start;
}
@media screen and (max-width: 667px){
	#cms_2-c .cate_title{
		margin-left: 0;
	}
	#cms_2-c .box_item{
		border: none;
	}
	.cms_2-c .box_item{
		border: none;
	}
}
#cms_2-a .cate{
	margin-bottom: 50px;
}
#cms_2-a .cate .cate_box:last-of-type{
	border-bottom: none;
}

.cms_2-a{
	position: relative;
}
.cms_2-a .swiper-button-prev,.cms_2-a .swiper-button-next{
	top: 50%;
	transform: translate(0,-50%);
	width: auto!important;
	height: auto!important;
	font-size: 30px;
}
.cms_2-a .swiper-button-prev{
	left: 10px;
}
.cms_2-a .swiper-button-next{
	right: 10px;
}
.cms_2-a .swiper-button-prev, .cms_2-a .swiper-button-next,.cms_2-a .swiper-button-prev,.cms_2-a .swiper-container-rtl .swiper-button-next{
	background-image:none;
}