@charset "utf-8";

/* -----------------------------
	一覧・詳細共通
-------------------------------- */

@media screen and (max-width: 768px){
	
}

/* -----------------------------
	一覧
-------------------------------- */

/*-----------カテゴリで絞り込むボタン-----------*/
.case-btn-area {
	padding: 50px 0;
}

.case-btn-area .case-btn-block {
	background: #f5f5f5;
	padding: 40px;
    border-radius: 20px;
}

.case-btn-area .case-btn-block-ttl {
	font-size: 2.1rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: .1rem;
}
.case-btn-area .case-btn-block-ttl i {
    margin-right: 10px;
}

.case-btn-area .case-btn-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 30px 0 0;
}

.case-btn-area .case-btn-list li {
	width: calc( ( 100% - 40px ) / 5 );
}

.case-btn-area .case-btn-list a {
	display: flex;
    flex-wrap: wrap;
	align-items: center;
    justify-content: center;
	padding: 15px;
	border-radius: 8px;
	background: #fff;
	border: 1px solid #333;
	position: relative;
    gap: 10px;
}

.case-btn-area .case-btn-list a::before {
	content: "\f061";
	display: inline-block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 12px;
	font-size: 1.4rem;
    color: var(--green);
    transition: all .3s;
}

.case-btn-area .case-btn-list .ill-wrap {
}

.case-btn-area .case-btn-list .ill-wrap img {
    height: 60px;
    max-width: 100px;
    object-fit: contain;
}

.case-btn-area .case-btn-list-txt {
	/*margin-left: 10px;*/
	font-size: 1.7rem;
	font-weight: bold;
    width: 100%;
    text-align: center;
}

.case-btn-area .case-btn-list-txt .accent {
	font-size: 2.1rem;
    color: var(--green03);
}

/*-----------一覧ページの実績レイアウト-----------*/
.case-area {
	margin: 0 0 50px;
}

.case-area .sort-title {
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.5;
	width: 1200px;
	margin: 0 auto 40px;
}

.case-area .inner {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.case-area .case-block {
	border: 1px solid #aaa;
	padding: 25px 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
    border-radius: 20px;
    width: calc( ( 100% - 30px ) / 2 );
}

/*.case-area .case-block:has( + .case-block ) {
	margin-bottom: 50px;
}*/

.case-area .case-img-wrap {
	width: 160px;
}

.case-area .case-img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
    border-radius: 10px;
}

.case-area .case-txt-wrap {
	width: calc( 100% - 180px );
	display: flex;
	flex-direction: column;
}

.case-area .case-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.case-area .case-tag-list li {
	/*padding: 8px 10px;*/
	/*border: 1px solid #333;*/
	font-size: 1.4rem;
    color: var(--green);
    font-weight: 600;
}

.case-area .case-tag-list li::before {
    content: "#";
    font-family: var(--en);
    font-weight: 400;
}

.case-area .case-ttl {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.6;
	margin: 15px 0 0;
}

.case-area .case-moving-txt {
	margin: 15px 0 0;
	padding: 0 0 10px;
	border-bottom: 1px solid var(--green);
}

.case-area .case-moving-before,
.case-area .case-moving-after {
	font-size: 2.1rem;
	font-weight: bold;
}

.case-area .case-moving-before {
	margin-right: 5px;
}

.case-area .case-moving-after {
	margin: 0 5px;
}

.case-area .case-block .price-table {
	width: 100%;
	background: #f6f6f6;
	padding: 15px;
	/*margin: 20px 0 0;*/
    border-radius: 8px;
}

.case-area .case-block .price-table .case-price-name {
	background: var(--green);
    color: #fff;
	text-align: center;
	padding: 10px;
	font-size: 1.5rem;
    border-radius: 5px;
}

.case-area .case-block .price-table .case-price-name:last-child {
    background: #B9A04E;
}

.case-area .case-block .price-table td {
	text-align: center;
	padding: 10px 0 0;
}

.case-area .case-block .price-table .price {
	font-weight: bold;
	font-size: 1.3rem;
}

.case-area .case-block .price-table .price .num {
	font-size: 2.4rem;
}

.case-area .case-block .price-table .price:last-child {
    color: #B9A04E;
}

.case-area .case-block .price-table .price:last-child .num {
	font-size: 2.8rem;
}

.case-area .case-block .price-table .price:last-child::after {
	content: "(税込)";
	font-size: 1.4rem;
	font-weight: 400;
    
}

.case-area .case-block .price-table .case-formula {
	font-size: 2.4rem;
}

.case-area .case-formula {
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1;
}

.case-area .voice-wrap {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.case-area .voice-ttl {
	width: 100%;
	display: flex;
	font-size: 1.8rem;
	font-weight: bold;
	align-items: center;
}

.case-area .voice-ttl::after {
	content: "";
	display: inline-block;
	flex-grow: 1;
	margin-left: 10px;
	border-bottom: 2px dotted var(--green);
}

.case-area .voice-icon-wrap {
	width: 80px;
	height: 80px;
}

.case-area .voice-icon-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.case-area .voice-txt-wrap {
	width: calc( 100% - 100px );
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	gap: 10px;
}

.case-area .voice-catch {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.6;
	width: 100%;
}

.case-area .voice-star {
	width: 120px;
	line-height: 1;
}

.case-area .voice-star img {
	width: 100%;
	object-fit: cover;
	vertical-align: middle;
}

.case-area .bottom-wrap {
	display: flex;
	align-items: center;
	width: 100%;
	justify-content: space-between;
}

.case-area .case-date {
	font-size: 1.3rem;
	line-height: 1;
}

@media (hover: hover) and (pointer: fine) {
	.case-btn-area .case-btn-list a:hover {
		/*background: var(--main-color);
		color: #fff;*/
        color: var(--green);
        border-color: var(--green);
	}
	
    .case-btn-area .case-btn-list a:hover::before {
        /*color: #fff;*/
        transform: translate(3px,-50%);
    }
    
	.case-area .case-block:hover {
		opacity: .8;
		/*background: var(--lightgreen);*/
        /*transform: translateX(10px);*/
	}
}

@media screen and (max-width: 768px){
	
	/*-----------カテゴリで絞り込むボタン-----------*/
	.case-btn-area {
		padding: 30px 0;
	}

	.case-btn-area .case-btn-block {
		padding: 0;
		border-radius: 8px;
	}

	.case-btn-area .case-btn-block-ttl {
		font-size: 2.0rem;
		position: relative;
		text-align: left;
		padding: 20px;
	}
	.case-btn-area .case-btn-block-ttl .accordion-icon {
		right: 20px;
	}
	.case-btn-area .case-btn-block-ttl .accordion-icon span {
	}
	.case-btn-area .sort-box {
		display: none;
		padding: 10px 20px 20px 20px;
	}
	
	.case-btn-area .case-btn-list {
		gap: 10px;
		margin: 0;
	}

	.case-btn-area .case-btn-list li {
		width: calc( ( 100% - 10px ) / 2 );
	}

	.case-btn-area .case-btn-list a {
		padding: 15px 8px;
		border-radius: 5px;
	}
	
	.case-btn-area .case-btn-list a::before {
		right: 8px;
		font-size: 1.2rem;
	}
	
	.case-btn-area .case-btn-list-txt {
		line-height: 1.3;
        font-size: 1.6rem;
	}
    
    .case-btn-area .case-btn-list-txt .accent {
        font-size: 1.9rem;
    }
    
    .case-btn-area .case-btn-list .ill-wrap img {
        height: 50px;
        max-width: 80px;
    }
    
	
	/*-----------一覧ページの実績レイアウト-----------*/
	
	.case-area .sort-title {
		font-size: 1.8rem;
		width: 100%;
		margin: 0 auto 20px;
		padding: 0 10px;
	}
	
    .case-area .inner {
        gap: 20px;
    }
    
	.case-area .case-block {
		padding: 20px;
		gap: 15px 20px;
        align-items: center;
        border-radius: 10px;
        width: 100%;
	}
	
	/*.case-area .case-block:has( + .case-block ) {
		margin-bottom: 15px;
	}*/
	
	.case-area .case-img-wrap {
		/*width: 30vw;
		min-height: 22vw;*/
        width: 100%;
        height: 45vw;
        order: 1;
	}
    
    .case-area .case-img-wrap img {
        border-radius: 5px;
    }
	
	.case-area .case-txt-wrap {
		display: contents;
	}
	
	.case-area .case-tag-list {
		/*width: calc( 100% - ( 30vw + 20px ) );*/
        width: 100%;
		gap: 10px;
		align-items: flex-start;
		align-content: flex-start;
        order: 2;
        margin: 5px 0 0;
	}
	
	.case-area .case-tag-list li {
		font-size: 1.2rem;
		align-items: center;
		align-content: center;
	}
	
	.case-area .case-ttl {
		font-size: 1.8rem;
		margin: 5px 0 0;
        order: 3;
	}
	
	.case-area .case-moving-txt {
		margin: 0;
		padding: 0 0 5px;
		width: 100%;
		font-size: 1.4rem;
        order: 4;
	}
	
	.case-area .case-moving-before,
	.case-area .case-moving-after {
		font-size: 1.8rem;
	}
	
	.case-area .case-moving-before {
		margin-right: 3px;
	}
	
	.case-area .case-moving-after {
		margin: 0 3px;
	}
	
	.case-area .case-block .price-table {
		/*order: 4;*/
		padding: 0;
		background: transparent;
        order: 5;
        margin: 10px 0 0;
	}
	
	.case-area .case-block .price-table .case-price-name {
		padding: 5px;
		font-size: 1.3rem;
	}
	
	.case-area .case-block .price-table th {
		display: none;
	}
	
	.case-area .case-block .price-table tr {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 0;
	}
	
	.case-area .case-block .price-table td {
		display: block;
		padding: 0;
		flex-grow: 1;
	}
	
	.case-area .case-block .price-table td:last-child {
		width: 100%;
	}
	
	.case-area .case-block .price-table td[data-title]::before {
		font-weight: bold;
		content: attr(data-title);
		font-weight: bold;
		padding: 10px;
		display: block;
		background: var(--green);
		color: #fff;
		margin: 0 0 10px;
		font-size: 1.5rem;
        border-radius: 5px;
	}
    
    .case-area .case-block .price-table td[data-title]:last-child::before {
        background: #B9A04E;
    }
	
	.case-area .case-block .price-table .case-formula.equal {
		display: none;
	}
	
	.case-area .voice-wrap {
		margin: 10px 0;
		gap: 15px 10px;
        order: 6;
	}
	
	.case-area .voice-ttl {
		font-size: 1.5rem;
        
	}
	
	.case-area .voice-icon-wrap {
		width: 60px;
		height: 60px;
	}
	
	.case-area .voice-icon-wrap img {
		width: 100%;
		object-fit: cover;
	}
	
	.case-area .voice-txt-wrap {
		width: calc( 100% - 70px );
		gap: 5px;
	}
	
	.case-area .voice-catch {
		font-size: 1.6rem;
	}
    
    .case-area .bottom-wrap {
        order: 7;
    }
}

/* -----------------------------
	詳細
-------------------------------- */
.case-detail-area {
	padding: 80px 0 0;
}

.case-detail-area .inner {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 40px;
}

.case-detail-area .ttl-block {
	width: 100%;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 30px 20px;
}

.case-detail-area .ttl-block .case-ttl {
	width: 100%;
	font-size: 3.0rem;
	font-weight: bold;
	padding: 0 0 20px;
	border-bottom: 1px solid #333;
    /*color: var(--green);*/
}

.case-detail-area .ttl-block .date {
	font-size: 1.5rem;
}

.case-detail-area .ttl-block .cate-list {
	display: flex;
	gap: 10px 15px;
	flex-wrap: wrap;
	align-items: center;
}

.case-detail-area .ttl-block .cate-list li {
	/*padding: 8px 10px;
	border: 1px solid #333;*/
	font-size: 1.4rem;
    color: var(--green);
}

.case-detail-area .ttl-block .cate-list li::before {
    content: "#";
    font-family: var(--en);
    font-weight: 400;
}

.case-detail-area .swiper-block {
	width: 600px;
}

.case-detail-area .table-block {
	width: calc( 100% - 640px );
}

.case-detail-area .table-block .case-moving-txt {
	width: 100%;
	padding: 0 0 10px;
	border-bottom: 2px dotted var(--green);
	font-size: 1.8rem;
}

.case-detail-area .table-block .case-moving-before {
	font-size: 2.4rem;
	font-weight: bold;
	margin-right: 3px;
}

.case-detail-area .table-block .case-moving-after {
	font-size: 2.4rem;
	font-weight: bold;
	margin: 0 3px;
}

.case-detail-area .table-block .case-table {
	border-collapse: collapse;
	width: 100%;
	margin: 20px 0 0;
}

.case-detail-area .table-block .case-table th {
	border-bottom: 1px solid #ddd;
	text-align: left;
	padding: 20px 10px;
    line-height: 1.5;
}

.case-detail-area .table-block .case-table td {
	border-bottom: 1px solid #ddd;
	text-align: left;
	padding: 20px 10px;
    line-height: 1.5;
}

.case-detail-area .table-block .case-table td ul li {
	line-height: 1.6;
}

.case-detail-area .price-block {
	width: 100%;
}

.case-detail-area .price-block .price-table {
	width: 100%;
	background: #f5f5f5;
	padding: 15px;
	margin: 20px 0 0;
    border-radius: 10px;
}

.case-detail-area .price-block .price-table .case-price-name {
	background: var(--green);
	text-align: center;
	padding: 10px;
	font-size: 1.6rem;
    color: #fff;
    border-radius: 5px;
}

.case-detail-area .price-block .price-table .case-price-name:last-child {
    background: #B9A04E;
}

.case-detail-area .price-block .price-table td {
	text-align: center;
	padding: 10px 0 0;
}

.case-detail-area .price-block .price-table .price {
	font-weight: bold;
	font-size: 1.3rem;
}

.case-detail-area .price-block .price-table .price .num {
	font-size: 2.4rem;
}

.case-detail-area .price-block .price-table .price:last-child {
    color: #B9A04E;
}

.case-detail-area .price-block .price-table .price:last-child .num {
	font-size: 3.0rem;
}

.case-detail-area .price-block .price-table .price:last-child::after {
	content: "(税込)";
	font-size: 1.4rem;
	font-weight: 400;
}

.case-detail-area .price-block .price-table .case-formula {
	font-size: 2.4rem;
}

.case-detail-area .voice-wrap {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.case-detail-area .voice-icon-wrap {
	width: 80px;
	height: 80px;
}

.case-detail-area .voice-icon-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.case-detail-area .voice-txt-wrap {
	width: calc( 100% - 100px );
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	gap: 10px;
}

.case-detail-area .voice-catch {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.6;
	width: 100%;
}

.case-detail-area .voice-star {
	width: 120px;
	line-height: 1;
}

.case-detail-area .voice-star img {
	width: 100%;
	object-fit: cover;
	vertical-align: middle;
}

.case-detail-area .sec-block {
	padding: 0 40px 40px;
	border-radius: 10px;
	background: #f5f5f5;
    width: 100%;
}

.case-detail-area .sec-block.col2 {
	width: calc( ( 100% - 40px ) / 2 );
}

.case-detail-area .sec-block .block-ttl {
	font-size: 2.4rem;
	font-weight: bold;
	margin: -10px auto 30px;
    color: #fff;
    padding: 15px 20px;
    background: var(--green03);
    position: relative;
    width: fit-content;
    border-radius: 10px;
}

.case-detail-area .sec-block .block-ttl::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 8px solid var(--green03);
    border-bottom: 0;
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
}

/*.case-detail-area .sec-block .block-ttl::before {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 110%;
    height: initial;
    background: url("../img/fukidashi-under02.svg") center/cover, no-repeat;
    aspect-ratio: 300 / 25; 
}*/

.case-detail-area .comment-block .ill-wrap {
    width: 200px;
    margin: 20px auto -40px;
}


@media screen and (max-width: 768px){
	.case-detail-area {
        padding: 40px 20px 0;
    }
    
    .case-detail-area .inner {
        gap: 40px;
    }
    
    .case-detail-area .ttl-block {
        gap: 10px;
    }
    
    .case-detail-area .ttl-block .cate-list {
        gap: 10px;
    }
    
    .case-detail-area .ttl-block .case-ttl {
        font-size: 2.4rem;
        padding: 0 0 15px;
        line-height: 1.5;
        margin: 10px 0 0;
    }
    
    .case-detail-area .table-block {
        width: 100%;
    }
    
    .case-detail-area .table-block .case-moving-txt {
        font-size: 1.5rem;
    }
    
    .case-detail-area .table-block .case-moving-before {
        font-size: 2.0rem;
    }
    
    .case-detail-area .table-block .case-moving-after {
        font-size: 2.0rem;
    }
    
    .case-detail-area .table-block .case-table {
        margin: 10px 0 0;
    }
    
    .case-detail-area .table-block .case-table th {
        border-bottom: none;
        padding: 20px 10px 0;
        display: block;
        width: 100%;
        color: var(--green);
    }
    
    .case-detail-area .table-block .case-table td {
        padding: 15px 10px;
        display: block;
        width: 100%;
    }
    
    .case-detail-area .price-block .price-table {
		padding: 0;
		background: transparent;
        margin: 0;
	}
	
	.case-detail-area .price-block .price-table .case-price-name {
		padding: 5px;
		font-size: 1.3rem;
	}
	
	.case-detail-area .price-block .price-table th {
		display: none;
	}
	
	.case-detail-area .price-block .price-table tr {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 0;
	}
	
	.case-detail-area .price-block .price-table td {
		display: block;
		padding: 0;
		flex-grow: 1;
	}
	
	.case-detail-area .price-block .price-table td:last-child {
		width: 100%;
	}
	
	.case-detail-area .price-block .price-table td[data-title]::before {
		font-weight: bold;
		content: attr(data-title);
		font-weight: bold;
		padding: 10px;
		display: block;
		background: var(--green);
		color: #fff;
		margin: 0 0 10px;
		font-size: 1.5rem;
        border-radius: 5px;
	}
    
    .case-detail-area .price-block .price-table td[data-title]:last-child::before {
        background: #B9A04E;
    }
	
	.case-detail-area .price-block .price-table .case-formula.equal {
		display: none;
	}
    
    .case-detail-area .sec-block {
        padding: 0 20px 20px;
    }
    
    .case-detail-area .sec-block.col2 {
        width: 100%;
        padding: 0 20px 20px;
    }
    
    .case-detail-area .sec-block .block-ttl {
        font-size: 1.7rem;
        margin: -10px auto 20px;
        padding: 12px 15px;
    }
    
    /*.case-detail-area .sec-block .block-ttl::before {
        bottom: -20px;
    }*/
    
    .case-detail-area .comment-block .ill-wrap {
        width: 150px;
        margin: 20px auto -20px;
    }
    
    .case-detail-area .voice-wrap {
		margin: 10px 0;
		gap: 15px 10px;
        justify-content: center;
        align-items: center;
        flex-direction: column;
	}
	
	.case-detail-area .voice-icon-wrap {
		width: 80px;
		height: 80px;
	}
	
	.case-detail-area .voice-icon-wrap img {
		width: 100%;
		object-fit: cover;
	}
	
	.case-detail-area .voice-txt-wrap {
		width: 100%;
		gap: 5px;
        flex-direction: column;
	}
    
	.case-detail-area .voice-catch {
		font-size: 2.1rem;
        margin: 15px 0 5px;
	}
    
    .case-detail-area .voice-txt {
        width: 100%;
    }
    
    .case-detail-area .bottom-wrap {
        order: 7;
    }

    #case.detail .cmn-case-area {
        padding: 40px 0 0;
    }
    
}

/* -----------------------------
	詳細　swiper
-------------------------------- */
.case-detail-area .swiper img {
	object-fit: cover;
}

.case-detail-area .swiper-main .swiper-slide {
	text-align: center;
	/*height: 400px;*/
}

.case-detail-area .swiper-main .swiper-slide img {
	width: 540px;
	height: 100%;
}

.case-detail-area .swiper-thumb {
	margin: 10px 0 0;
}

.case-detail-area .swiper-thumb .swiper-slide img {
	width: 100%;
	height: 100%;
}

.case-detail-area .swiper-thumb .thumb-media {
	height: 100px;
}

.case-detail-area .swiper-controller {
	display: flex;
	gap: 10px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	justify-content: space-between;
	
}

.case-detail-area .swiper-button-next,
.case-detail-area .swiper-button-prev{
	border-radius: 30px;
	width: 60px;
	height: 60px;
	background: #fff;
	border: 1px solid var(--green);
	position: relative;
	cursor: pointer;
	transition: all .3s;
}

.case-detail-area .swiper-button-disabled {
	background: #aaa;
	cursor: default;
    pointer-events: none;
}

.case-detail-area .swiper-button-prev::before {
	content: "\f060";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
    color: var(--green);
    transition: all .3s;
}

.case-detail-area .swiper-button-next::before {
	content: "\f061";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
    color: var(--green);
    transition: all .3s;
}

.case-detail-area .swiper-scrollbar {
    position: relative;
    margin: 60px 0 0 calc( ( 100% - 1200px  ) / 2 );
	width: 1000px;
  }
.case-detail-area .swiper-scrollbar::after {
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    margin: auto;
    content: "";
    background-color: #f5f5f5;
  }
.case-detail-area .swiper-scrollbar-drag {
    height: 20px;
    padding: 8px 0;
    cursor: pointer;
    background-color: var(--green);
    background-clip: content-box;
  }
.case-detail-area .swiper-scrollbar-drag:active {
    background-color: var(--green);
}

/* フェードモード時 */
.case-detail-area .swiper-fade .swiper-slide {
   transition-property: opacity !important;
}

.case-detail-area .schedule-block {
	
}

.case-detail-area .schedule-block .time {
	font-size: 1.7rem;
	line-height: 1.6;
}

.case-detail-area .schedule-block .action {
	font-size: 1.7rem;
	line-height: 1.6;
}

.case-detail-area .schedule-block .time-table {
	width: 100%;
	position: relative;
	border-collapse: collapse;
	margin-left: 20px;
}

/*.case-detail-area .schedule-block .time-table::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 17px;
	left: -10px;
	height: calc( 100% - 34px );
	width: 1px;
	background: #333;
}*/

.case-detail-area .schedule-block .time-table th {
	text-align: left;
	width: 15%;
	position: relative;
	padding: 5px 0;
	vertical-align: text-top;
}

.case-detail-area .schedule-block .time-table th::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 16px;
	left: -23px;
	width: 7px;
	height: 7px;
	border-radius: 4px;
	background: var(--green);
}
.case-detail-area .schedule-block .time-table th::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 16px;
	left: -20px;
	height: 100%;
	width: 1px;
	background: var(--green);
}

.case-detail-area .schedule-block .time-table tr:last-child th::after {
	display: none;
}

.case-detail-area .schedule-block .time-table td {
	text-align: left;
	width: 85%;
	padding: 5px 0;
}

@media (hover: hover) and (pointer: fine) {
    .case-detail-area .swiper-button-next:hover,
    .case-detail-area .swiper-button-prev:hover {
        background: var(--green);
    }
    
    .case-detail-area .swiper-button-next:hover::before,
    .case-detail-area .swiper-button-prev:hover::before {
        color: #fff;
    }
    
}

@media screen and (max-width: 768px){
	/*detail swiper*/
    .case-detail-area .swiper-block {
        width: 100%;
    }
    
    .case-detail-area .swiper-main .swiper-slide {
        height: 60vw;
    }
    
    .case-detail-area .swiper-main .swiper-slide img {
        width: 100%;
        height: 100%;
    }
    
    .case-detail-area .swiper-thumb .thumb-media {
        height: 20vw;
    }
    
    .case-detail-area .swiper-button-next,
    .case-detail-area .swiper-button-prev {
        border-radius: 20px;
        width: 40px;
        height: 40px;
    }
    
    .case-detail-area .swiper-button-prev {
        margin-left: 10px;
    }
    
    .case-detail-area .swiper-button-next {
        margin-right: 10px;
    }
    
    .case-detail-area .schedule-block .time-table th {
        width: 100%;
        display: block;
    }
    
    .case-detail-area .schedule-block .time-table td {
        width: 100%;
        display: block;
        position: relative;
        padding: 0 0 10px;
    }
    
    .case-detail-area .schedule-block .time-table tr:not(:last-child) td::after {
        content: "";
        display: inline-block;
        position: absolute;
        top: 16px;
        left: -20px;
        height: 100%;
        width: 1px;
        background: var(--green);
    }
    
    .case-detail-area .schedule-block .action {
        font-size: 1.5rem;
    }
}

/* -----------------------------
	〇〇〇
-------------------------------- */

@media screen and (max-width: 768px){
	
}
