@charset "UTF-8";
/* CSS Document */

/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 961px){
	section.wetblast div.fl_block,
	section.portfolio div.features div.fl_block{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}

	section.wetblast div.fl_block div.text_block{
		width: 49.7%;
	}

	section.wetblast div.fl_block div.img_block{
		width: 43%;
	}

	section.wetblast div.text_block p{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		letter-spacing: 0;
		line-height: 1.8;
	}

	section.wetblast ul.outotsu{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 2vw;
		margin-top: 2cqw;
	}

	section.wetblast ul.outotsu li{
		width: 42%;
		position: relative;
	}
	
	section.wetblast ul.outotsu li:first-child::after{
		content: "";
		width: 4vw;
		width: 4cqw;
		max-width: 52px;
		height: 3.07vw;
		height: 3.0cqw;
		max-height: 40px;
		display: block;
		background: url("../images/wetblast/arrow_x.svg") no-repeat;
		background-size: contain;
		position: absolute;
		top: 30%;
		right: -30%;
	}
	
	section.nano ul li:first-child::after{
		content: "";
		width: 4vw;
		width: 4cqw;
		max-width: 52px;
		height: 3.07vw;
		height: 3.0cqw;
		max-height: 40px;
		display: block;
		background: url("../images/wetblast/arrow_x.svg") no-repeat;
		background-size: contain;
		position: absolute;
		top: 30%;
		right: -30%;
	}

	section.wetblast ul.outotsu li figure div.photo,
	section.nano ul li figure div.photo,
	section.portfolio div.block ul li figure div,
	section.portfolio div.features div.photo_block ul li figure div.photo{
		border-radius: 3px;
		overflow: hidden;
		line-height: 0;
	}
	
	section.wetblast ul.outotsu li figure div.photo,
	section.portfolio div.features div.photo_block ul li figure div.photo{
		border-radius: 0;
	}

	section.wetblast figcaption,
	section.nano figcaption,
	section.portfolio div.block ul li figure figcaption,
	section.portfolio div.features div.photo_block figcaption{
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		font-weight: 400;
		line-height: 1.3;
		display: block;
		margin-top: 0.5em;
	}

	section.wetblast figcaption::before,
	section.portfolio div.block ul li figure figcaption::before,
	section.portfolio div.features div.photo_block figcaption::before{
		content: "□ ";
	}
	
	section.nano figcaption span {
		position: absolute;
		top: -2.3em;
		left: 0.75em;
	}

	section.nano > p{
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem)!important;
		text-align: right;
		padding-right: 3.5em;
	}

	section.nano > ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 1.2vw;
	}

	section.nano > ul > li{
		width: 22.5%;
		position: relative;
	}
	
	section.nano ul li:first-child {
		margin-right: 3.77%;
	}

	section.nano ul li:first-child::after{
		top: 32%;
		right: -19%;
	}

	section.nano figcaption{
		display: flex;
		justify-content: center;
	}

	section.nano figcaption span::before{
		content: "□ ";
	}

	section.nano figcaption small{
		font-size: 100%;
		margin-right: 2.85em;
	}

	section.portfolio div.block ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	section.portfolio div.block ul li{
		width: 23%;
		line-height: 0;
	}

	section.portfolio div.block ul li:nth-child(n + 5){
		margin-top: 2vw;
		margin-top: 2cqw;
	}

	section.portfolio div.features{
		margin-top: 3.5vw;
		margin-top: 3.5cqw;
	}

	section.portfolio div.features div.text_block{
		width: 48%;
	}

	section.portfolio div.features div.photo_block{
		width: 48%;
		margin-top: 2.8vw;
		margin-top: 2.8cqw;
	}

	section.portfolio ul.num_type li{
		min-height: 3.2em;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		line-height: 1.6;
		letter-spacing: 0.04em;
		position: relative;
		padding-left: 3em;
		border-bottom: 1px solid #e5e5e5;
	}

	section.portfolio ul.num_type li span.num{
		display: inline-block;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		font-weight: 500;
		line-height: 1;
		color: #FFF;
		background: #333;
		padding: 0.25em 0.5em 0.35em;
		border-radius: 3px;
		position: absolute;
		left: 0;
	}

	section.portfolio div.features div.photo_block ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	section.portfolio div.features div.photo_block ul li{
		width: 48%;
	}
}


/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 960px){
	section.wetblast div.fl_block,
	section.portfolio div.features div.fl_block{
		display: block;
	}

	section.wetblast div.fl_block div.block + div.block{
		margin-top: 8vw;
	}

	section.wetblast div.text_block p{
		font-size: calc(3.4rem * 0.375);
		font-size: clamp(calc((3.4rem * 0.375)), 3.54vw, 3.4rem);
		letter-spacing: 0.08em;
		line-height: 1.8;
	}

	section.wetblast ul.outotsu{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 7vw;
	}

	section.wetblast ul.outotsu li{
		width: 42%;
		position: relative;
	}
	
	section.wetblast ul.outotsu li:first-child::after{
		content: "";
		width: 7.2vw;
		width: 7.2cqw;
		height: 5.52vw;
		height: 5.52cqw;
		display: block;
		background: url("../images/wetblast/arrow_x.svg") no-repeat;
		background-size: contain;
		position: absolute;
		top: 28%;
		right: -30%;
	}
	
	section.nano ul li:first-child::after{
		content: "";
		width: 6.62vw;
		width: 6.62cqw;
		height: 8.64vw;
		height: 8.64cqw;
		display: block;
		background: url("../images/wetblast/arrow_y.svg") no-repeat;
		background-size: contain;
		position: absolute;
		bottom: -12vw;
		right: calc(50% - 3.31vw);
		right: calc(50% - 3.31cqw);
	}

	section.wetblast div.img_block div.scllor_block figure{
		width: 135%;
	}

	section.wetblast ul.outotsu li figure div.photo,
	section.nano ul li figure div.photo,
	section.portfolio div.block ul li figure div,
	section.portfolio div.features div.photo_block ul li figure div.photo{
		border-radius: 1vw;
		overflow: hidden;
		line-height: 0;
	}
	
	section.wetblast ul.outotsu li figure div.photo,
	section.portfolio div.features div.photo_block ul li figure div.photo{
		border-radius: 0;
	}

	section.wetblast figcaption,
	section.nano figcaption,
	section.portfolio div.block ul li figure figcaption,
	section.portfolio div.features div.photo_block figcaption{
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		font-weight: 400;
		line-height: 1.3;
		display: block;
		margin-top: 0.5em;
	}
	
	section.nano figcaption span {
		position: absolute;
		top: -2.35em;
		left: 2.75em;
	}
	
	section.wetblast figcaption,
	section.portfolio div.block ul li figure figcaption {
		text-indent: -1.25em;
		padding-left: 1.25em;
		letter-spacing: 0.05em;
	}

	section.wetblast figcaption::before,
	section.portfolio div.block ul li figure figcaption::before,
	section.portfolio div.features div.photo_block figcaption::before{
		content: "□ ";
	}

	section.nano > p{
		font-size: calc(3.2rem * 0.375)!important;
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem)!important;
		text-align: right;
		padding-right: 3em;
	}

	section.nano > ul{
		width: 80%;
		display: block;
		margin: 3vw auto 0;
	}

	section.nano > ul > li{
		width: 100%;
		position: relative;
		padding-left: 12%;
	}

	section.nano > ul > li + li{
		margin-top: 4vw;
	}

	section.nano ul li:first-child{
		margin-bottom: 20vw;
	}

	section.nano figcaption{
		display: flex;
		justify-content: center;
	}

	section.nano figcaption span::before{
		content: "□ ";
	}

	section.nano figcaption small{
		font-size: 100%;
		margin-right: 2.85em;
	}

	section.portfolio div.block ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	section.portfolio div.block ul li{
		width: 46%;
		line-height: 0;
	}

	section.portfolio div.block ul li:nth-child(n + 3){
		margin-top: 6vw;
	}

	section.portfolio div.features{
		margin-top: 12vw;
	}

	section.portfolio ul.num_type li{
		min-height: 3.8em;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		line-height: 1.6;
		letter-spacing: 0.04em;
		position: relative;
		padding: 0.5em 0 0.5em 3em;
		border-bottom: 1px solid #e5e5e5;
	}

	section.portfolio ul.num_type li span.num{
		display: inline-block;
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		font-weight: 500;
		line-height: 1;
		color: #FFF;
		background: #333;
		padding: 0.25em 0.5em 0.35em;
		border-radius: 0.6vw;
		position: absolute;
		left: 0;
	}

	section.portfolio div.features div.photo_block{
		margin-top: 8vw;
	}

	section.portfolio div.features div.photo_block ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	section.portfolio div.features div.photo_block ul li{
		width: 46%;
	}
}
