@charset "UTF-8";


.page-titleimg
{
	background-image: url(../img/works/top.webp)
}

@media screen and (max-width:500px)
{
	.page-titleimg
	{
		background-image: url(../img/works/top-sp.webp)
	}
}

.works
{
	position: relative;
	margin-top: 78px
}

.works .list
{
	background: var(--lbl);
	padding: 60px 0
}

.works .list .container
{
	max-width: 1000px
}

.works .list .item
{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px
}

.works .list .item .items.is-hidden
{
	display: none
}

.works .list .item li
{
	position: relative;
	background: #fff;
	width: 23.5%;
	margin-right: 2%;
	margin-bottom: 20px
}

.works .list .item li:nth-child(4n)
{
	margin-right: 0
}

.works .list .item li .img:hover
{
	opacity: .9
}

.works .list .item li img
{
	width: 100%;
	height: 160px;
	object-fit: cover
}

.works .list .item li .detail
{
	padding: 10px
}

.works .list .item li .detail h3
{
	font-size: 1.35rem;
	line-height: 1.4;
	font-weight: 500;
	padding-bottom: .5em
}

.works .list .item li .detail h3:hover
{
	text-decoration: underline
}

.works .list .item li .adress,
.works .list .item li .price
{
	font-size: 1.25rem
}

.works .list .item li .price
{
	font-weight: 500
}

.works .list .item li .tag
{
	margin-bottom: 10px;
}

.works .list .item li .tag a
{
	font-size: 1.1rem;
	display: inline-block;
	letter-spacing: 0;
	margin-right: .8em;
	margin-bottom: 3px;
	color: var(--bl);
	background: var(--lbl);
	padding: 0 0.5em;
}

.works .list .item li .detail .flex
{
	font-size: 11px;
}

.works .list .category
{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px
}

.works .list .category li
{
	margin-right: 1.4%;
	background: #fff;
	margin-bottom: 10px;
	border-radius: 4px;
	border: 1px solid var(--bl);
}

.works .list .category li.current
{
	background: var(--bl);
}

.works .list .category li a
{
	padding: 6px 15px;
	text-align: center
}

.works .list .category li.current a
{
	color: #fff
}

.works .list .category li a span
{
	font-size: 12px;
	display: inline-block;
	background: var(--lbl);
	color: var(--bl);
	padding: 3px 3px 0;
	text-align: center;
	line-height: 1
}

.more.is-btn-hidden
{
	display: none
}

.more button
{
	cursor: pointer;
	outline: none;
	padding: 0;
	height: 70px;
	width: 70px;
	margin: 0 auto;
	display: block
}

@media screen and (max-width:999px)
{
	.works
	{
		margin-top: 50px
	}

	.works h2
	{
		position: static;
		text-align: center;
		justify-content: center;
		font-size: 2rem;
		padding-bottom: 15px
	}

	.works h2 img
	{
		width: 30px;
		margin-right: 10px
	}

	.works .list
	{
		top: 40px;
		padding: 32px 0
	}

	.works .list .category li a
	{
		font-size: 13px;
		padding: 3px 5px 1px;
		letter-spacing: 0
	}

	.works .list .category li a span
	{
		font-size: 11px;
		display: inline-block;
		padding: 3px 3px 0;
		text-align: center;
		line-height: 1
	}

	.works .list .item
	{
		justify-content: space-between
	}

	.works .list .item li
	{
		width: 48%;
		margin-right: 0
	}

	.works .list .item li img
	{
		height: 90px
	}

	.works .list .category li
	{
		margin-right: 10px
	}
}

#worksItem
{
	padding-top: 37px;
}

@media screen and (max-width:999px)
{
	#worksItem
	{
		padding-top: 20px;
	}
}

#worksItem .head-area
{
	margin: 0 auto 30px;
	text-align: center;
}

#worksItem .head-area .tag
{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto 20px;
}

#worksItem .head-area .tag a
{
	background: var(--lbl);
	padding: 2px 10px 1px;
	margin: 0 4px 10px;
	font-size: 90%;
}

#worksItem .head-area span.kugiri
{
	padding: 0 0.5em;
}

#worksItem h1
{
	font-size: 2.2rem;
	font-weight: 500;
	color: var(--bl);
	padding-bottom: 20px;
}

@media screen and (max-width:999px)
{
	#worksItem h1
	{
		font-size: 1.6rem;
		line-height: 1.6;
		padding-bottom: 15px;
	}

	#worksItem .head-area
	{
		padding: 0
	}

	#worksItem .head-area .tag
	{
		margin: 0 auto 15px;
	}

	#worksItem .head-area a
	{
		margin-left: 0
	}

}

#worksItem .free
{
	background: #fff;
	margin: 0 auto 100px;
	font-size: 1.6rem
}

#worksItem .free p
{
	font-size: 1.6rem;
	line-height: 1.9;
}

#worksItem .free a
{
	display: inline;
	color: var(--bl);
	text-decoration: underline
}

#worksItem .free .normal
{
	margin-bottom: 30px;
}

#worksItem .free .normal img
{
	width: 100%;
	max-height: 590px;
}

#worksItem .free .fleximg
{
	margin-bottom: 30px;
}

#worksItem .free .flex
{
	display: flex;
	justify-content: space-between;
}

#worksItem .free .flex img
{
	width: 48%;
	max-height: 290px;
	object-fit: cover;
}

@media screen and (max-width:999px)
{
	#worksItem .free
	{
		padding: 0;
		margin: 0 auto 50px
	}

	#worksItem .free .normal
	{
		margin-bottom: 15px;
	}

	#worksItem .free .normal img
	{
		max-height: 590px;
	}

	#worksItem .free .fleximg
	{
		margin-bottom: 15px;
	}

	#worksItem .free .flex img
	{
		max-height: 290px;
		object-fit: cover;
	}

	#worksItem .free p
	{
		line-height: 1.6;
		padding-top: 0.5em;
	}
}

#worksItem .basic-area
{
	padding: 0 30px 100px
}

#worksItem .basic-area h2
{
	font-size: 2.5rem;
	color: var(--bl);
	font-weight: 500;
	text-align: center;
	margin-bottom: 50px;
	margin-top: 25px
}

#worksItem .basic-area h3
{
	display: flex;
	align-items: center;
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 15px;
	margin-top: 40px;
	color: var(--bl);
}

#worksItem .basic-area h3 img
{
	width: 18px;
	height: 18px;
	margin-right: .5em
}

#worksItem .basic-area .basic
{
	padding: 0 30px
}

#worksItem .basic-area .basic .block
{
	width: 575px;
	margin: 0 auto
}

#worksItem .basic-area .basic .block dl
{
	display: flex;
	margin-bottom: 1em;
	font-size: 1.6rem
}

#worksItem .basic-area .basic .block dt
{
	width: 35%
}

#worksItem .basic-area .basic .block dd
{
	width: 65%
}

#worksItem .basic-area .basic .block dl.tag dd a
{
	text-decoration: underline;
	color: var(--green);
	font-size: 1.3rem
}

#worksItem .basic-area .basic .btn-area
{
	text-align: center;
	margin-top: 70px
}

#worksItem .basic-area .basic .btn-area p
{
	position: relative;
	display: block;
	width: 22em;
	margin: 0 auto 1em;
	font-size: 1.6rem
}

#worksItem .basic-area .basic .btn-area p::before
{
	position: absolute;
	content: '/';
	top: 0;
	left: -1em;
	font-size: 2rem;
	transform: rotateY(180deg)
}

#worksItem .basic-area .basic .btn-area p::after
{
	position: absolute;
	content: '/';
	top: 0;
	right: -1em;
	font-size: 2rem
}

#worksItem .basic-area .basic .btn-area .btn-bk
{
	margin-top: 0
}

#worksItem .basic-area .kukaku ul
{
	display: flex
}

@media screen and (max-width:999px)
{
	#worksItem .basic-area
	{
		padding: 0 0 50px
	}

	#worksItem .basic-area h2
	{
		font-size: 2rem;
		margin-bottom: 25px;
		margin-top: 25px
	}

	#worksItem .basic-area h3
	{
		font-size: 1.6rem;
		margin-top: 20px
	}

	#worksItem .basic-area h3 img
	{
		width: 15px;
		height: 15px
	}

	#worksItem .basic-area .basic
	{
		padding: 0
	}

	#worksItem .basic-area .basic .btn-area p
	{
		font-size: 1.3rem;
		letter-spacing: 0
	}

	#worksItem .basic-area .btn-bk
	{
		font-size: 1.4rem
	}

	#worksItem .basic-area .btn-bk::after
	{
		width: 14px;
		height: 14px;
		background-size: cover;
		top: 35%
	}

	#worksItem .basic-area .basic .block
	{
		width: 100%
	}

	#worksItem .basic-area .basic .block dl
	{
		display: block;
		font-size: 1.4rem
	}

	#worksItem .basic-area .basic .block dt,
	#worksItem .basic-area .basic .block dd
	{
		width: 100%
	}

	#worksItem .basic-area .basic .btn-area
	{
		margin-top: 40px
	}
}

#worksItem .other-basic
{
	padding: 0 30px 50px
}

#worksItem .other-basic h2
{
	font-size: 2.5rem;
	font-weight: 500;
	text-align: center;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	margin-bottom: 50px
}

#worksItem .other-basic .block
{
	padding: 0 30px
}

#worksItem .other-basic h3
{
	display: flex;
	align-items: center;
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 5px
}

#worksItem .other-basic h3 img
{
	width: 18px;
	height: 18px;
	margin-right: .5em
}

#worksItem .other-basic div
{
	margin-bottom: 30px;
	font-size: 1.6rem
}

#worksItem .other-basic div.recommend ul
{
	display: flex;
	flex-wrap: wrap
}

#worksItem .other-basic div.recommend ul li
{
	display: block;
	width: 32%;
	margin-right: 2%;
	margin-bottom: 15px;
	font-size: 1.4rem
}

#worksItem .other-basic div.recommend ul li:nth-child(3n)
{
	margin-right: 0
}

#worksItem .other-basic div.recommend ul li img
{
	width: 100%;
	height: 190px;
	object-fit: cover;
	margin-bottom: 5px
}

@media screen and (max-width:999px)
{
	#worksItem .other-basic
	{
		padding-bottom: 20px
	}

	#worksItem .other-basic h2
	{
		font-size: 2rem;
		margin-bottom: 25px
	}

	#worksItem .other-basic h3
	{
		font-size: 1.6rem
	}

	#worksItem .other-basic h3 img
	{
		width: 15px;
		height: 15px
	}

	#worksItem .other-basic div
	{
		font-size: 1.4rem
	}

	#worksItem .other-basic .block
	{
		padding: 0
	}

	#worksItem .other-basic div.recommend ul li
	{
		width: 100%
	}
}

#worksItem .basic-area .basic .block.interview
{
	position: relative
}

#worksItem .basic-area .basic .block.interview span
{
	position: absolute;
	font-size: 2.1rem;
	top: 43%;
	left: 0;
	right: 0;
	text-align: center;
	color: #fff;
	z-index: 1
}

#worksItem .basic-area .basic .block.interview::before
{
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, .4)
}

#worksItem .basic-area .basic .block iframe
{
	padding-bottom: 30px;
	width: 100%;
	height: 362px
}

@media screen and (max-width:999px)
{
	#worksItem .basic-area .basic .block iframe
	{
		padding-bottom: 10px;
		width: 100%;
		height: 51vw
	}

	#worksItem .basic-area .basic .block.interview span
	{
		font-size: 1.4rem
	}
}

#worksItem .blog
{
	padding: 0 30px 50px;
	margin-top: 50px
}

#worksItem .blog h2
{
	font-size: 2.5rem;
	font-weight: 500;
	text-align: center;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	margin-bottom: 50px
}

#worksItem .blog .block
{
	padding: 0 30px
}

#worksItem .blog h3
{
	display: flex;
	align-items: center;
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 5px
}

#worksItem .blog h3 img
{
	width: 18px;
	height: 18px;
	margin-right: .5em
}

#worksItem .blog div
{
	margin-bottom: 30px;
	font-size: 1.6rem
}

#worksItem .blog div.recommend ul
{
	display: flex;
	flex-wrap: wrap
}

#worksItem .blog div.recommend ul li
{
	display: block;
	width: 32%;
	margin-right: 2%;
	margin-bottom: 15px;
	font-size: 1.4rem
}

#worksItem .blog div.recommend ul li:nth-child(3n)
{
	margin-right: 0
}

#worksItem .blog div.recommend ul li img
{
	width: 100%;
	height: 190px;
	object-fit: cover;
	margin-bottom: 5px
}

@media screen and (max-width:999px)
{
	#worksItem .blog
	{
		padding: 0 0 20px;
		margin-top: 25px
	}

	#worksItem .blog h2
	{
		font-size: 2rem;
		margin-bottom: 25px
	}

	#worksItem .blog h3
	{
		font-size: 1.6rem
	}

	#worksItem .blog h3 img
	{
		width: 15px;
		height: 15px
	}

	#worksItem .blog div
	{
		font-size: 1.4rem;
		margin-bottom: 0
	}

	#worksItem .blog .block
	{
		padding: 0
	}

	#worksItem .blog div.recommend ul li
	{
		width: 100%
	}
}

.swiper .swiper-slide
{
	opacity: .3;
	/* 左右のスライドを薄くする */
	/*transform: scale(.8);*/
	/* 左右のスライドを小さくする */
	/*transition: .7s;*/
	/* ゆっくり小さくさせる */
}

.swiper .swiper-slide a
{
	text-align: center;
	border: 1px solid #c9c9c9;
}

.swiper .swiper-slide img
{
	height: 380px;
	width: auto;
}

.swiper .swiper-slide-active
{
	opacity: 1;
	/* 中央のスライドは薄くしない */
	transform: scale(1);
	/* 中央のスライドは小さくしない */
	z-index: 1;
	/* 中央のスライドを一番上にする */
}

.gallery
{
	margin-bottom: 50px;
}

.swiper .swiper-slide img
{
	height: 130px;
	width: auto;
}

/*サムネイル*/
.gallery .container
{
	overflow-x: scroll;
	margin-top: 15px;
}

.swiper-container .swiper-slide
{
	padding: 0 2px;
}

.swiper-container .swiper-slide img
{
	height: 50px;
	width: 100%;
	object-fit: cover;
}

.slider-thumbnail .swiper-slide
{
	opacity: .4;
	transition: opacity .8s;
}

.slider-thumbnail .swiper-slide.swiper-slide-thumb-active
{
	opacity: 1;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev,
.swiper-button-next
{
	height: 35px;
	width: 35px;
}

.swiper-button-prev
{
	right: auto;
	left: 7%;
}

.swiper-button-next
{
	right: 7%;
	left: auto;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after
{
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 35px;
	margin: auto;
	width: 35px;
}

/* 前への矢印カスタマイズ */
.swiper-button-prev::after
{
	background-image: url(../img/common/arrow-slider-left.png);
}

/* 次への矢印カスタマイズ */
.swiper-button-next::after
{
	background-image: url(../img/common/arrow-slider-right.png);
}

/* 画像サイズ調整 */
.swiper-slide img
{
	height: auto;
	width: 100%;
}

@media (min-width:500px)
{
	.swiper-container .swiper-slide img
	{
		height: 60px;
	}
}

@media (min-width:737px)
{
	.gallery
	{
		margin-bottom: 100px;
	}

	.swiper .swiper-slide img
	{
		height: 380px;
		width: auto;
	}

	/* 前へ次への矢印カスタマイズ */
	.swiper-button-prev,
	.swiper-button-next
	{
		height: 42px;
		width: 42px;
	}

	.swiper-button-prev::after,
	.swiper-button-next::after
	{
		height: 42px;
		width: 42px;
	}

	.swiper-button-prev
	{
		right: auto;
		left: 15%;
	}

	.swiper-button-next
	{
		right: 15%;
		left: auto;
	}

	/*サムネイル*/
	.gallery .container
	{
		margin-top: 30px;
	}

	.swiper-container .swiper-slide
	{
		padding: 0 5px;
	}

	.swiper-container .swiper-slide img
	{
		height: 90px;
		width: 100%;
		object-fit: cover;
	}
}

@media (min-width:1600px)
{
	.swiper-slide img
	{
		height: 490px;
		width: auto;
	}
}

.modaal-wrapper .modaal-close
{
	position: absolute;
	top: -50px;
	right: 0
}

@media (min-width:737px)
{
	.modaal-wrapper .modaal-close
	{
		top: 40%;
		right: -60px
	}

	.modaal-image .modaal-container
	{
		width: 80%;
		height: auto
	}

	.modaal-image .modaal-inner-wrapper
	{
		padding-top: 150px
	}
}

/* その他の事例 */
.works .list.container
{
	background: #fff;
}

.works .list.container h2
{
	font-size: 1.6rem;
	color: #797979;
}

@media (min-width:737px)
{
	.works .list.container h2
	{
		font-size: 1.7rem;
		margin-bottom: 20px;
	}

}