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

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/



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

@media print, screen and (min-width: 961px){
	
	
	
	section.factors div.img_block{
		background: #efeee1;
		margin-top: 1.5vw;
		padding: 1em 1.6%;
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
	}
	
	section.factors div.img_block h4{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		font-weight: 700;
		line-height: 1;
		text-align: center;
		background: #FFF;
		padding: 1em 0;
	}
	
	section.mechanism div.fl_block{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.mechanism div.fl_block div.l_block{
		width: 68%;
	}
	
	section.mechanism div.fl_block div.l_block p{
		margin-bottom: 2.5em;
	}
	
	section.mechanism div.fl_block div.l_block div.scllor_block{
		line-height: 0;
	}
	
	section.mechanism div.fl_block div.r_block{
		width: 28.6%;
		background: #e8ebef;
		padding: 1em 1.6%;
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		position: relative;
	}
	
	section.mechanism div.fl_block div.r_block h4{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		background: #FFF;
		padding: 0.75em 0;
		margin-bottom: 1em;
	}
	
	section.mechanism div.fl_block div.r_block p.cap{
		font-size: 1.0rem;
		font-size: clamp(calc((1.0rem * 0.739)), 0.769vw, 1.0rem);
		line-height: 1.3;
		position: absolute;
		top: -4em;
		left: 0;
	}
	
	section.mechanism div.fl_block div.r_block h5{
		font-size: 1.3rem;
		font-size: clamp(calc((1.3rem * 0.739)), 1vw, 1.3rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		color: #FFF;
		background: #80a1c9;
		padding: 0.5em 0;
		border-radius: 25px;
		margin-bottom: 1em;
	}
	
	section.mechanism div.fl_block div.r_block figure + h5 {
		margin-top: 1em;
	}
	
	section.track_record div.intoro{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	section.track_record div.intoro h3{
		width: 18%;
		height: 7em;
		font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
        font-weight: 500;
        letter-spacing: 0.24em;
        color: #FFF;
        background: #333;
        padding: 0.25em 0.75em 0.3em;
        border-radius: 10px;
		justify-content: center;
		margin: 0;
	}
	
	section.track_record div.intoro p{
		width: 78.9%;
		font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		line-height: 1.8;
        letter-spacing: 0.06em;
	}
	
	section.track_record div.fl_block.factory{
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
		font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		margin-top: 3em;
		position: relative;
	}
	
	section.track_record div.fl_block.factory div.list{
		width: 51.8%;
		font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		background: #e8ebef;
		padding: 1em 1em 1.5em;
		position: relative;
	}
	
	section.track_record div.fl_block.factory div.list::after{
		content: "";
		width: 2.46vw;
		width: 2.46cqw;
		max-width: 32px;
		height: 2.76vw;
		height: 2.76cqw;
		max-height: 36px;
		display: inline-block;
		background: url("../images/tafflat/powder/arrow_x.svg") no-repeat;
		background-size: contain;
		position: absolute;
		top: calc(50% - 30px);
		right: -4.5em;
		z-index: 3;
	}
	
	section.track_record div.fl_block.factory div.list h4{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		background: #FFF;
		padding: 0.75em 0;
		margin-bottom: 1em;
	}
	
	section.track_record div.fl_block.factory div.list ul{
		width: 95%;
		margin: 0 auto;
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
	}
	
	section.track_record div.fl_block.factory div.list ul li{
		width: 25%;
		display: inline-block;
		font-size: 1.5rem;
        font-size: clamp(calc((1.5rem * 0.739)), 1.15vw, 1.5rem);
		line-height: 1.7;
		padding-left: 0.75em;
		position: relative;
	}
	
	section.track_record div.fl_block.factory div.list ul li:nth-child(4n){
		width: 22%;
	}
	
	section.track_record div.fl_block.factory div.list ul li::before{
		content: "● ";
        font-size: 43%;
		color: #80a1c9;
		display: inline-block;
		position: absolute;
		top: 1em;
		left: 0;
	}
	
	section.track_record div.fl_block.factory p {
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		line-height: 1;
		padding-top: 2em;
		writing-mode: vertical-rl;
		position: absolute;
		top: 0;
		left: 53%;
	}
	
	section.track_record div.fl_block.factory div.photo_block{
		width: 40.3%;
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
	}
	
	section.track_record div.fl_block.factory div.photo_block figure{
		width: 45.7%;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
	}
	
	section.track_record div.fl_block.factory div.photo_block figure:nth-child(n + 3){
		margin-top: 1em;
	}
	
	section.track_record div.fl_block.factory div.photo_block figure figcaption,
	section.track_record div.fl_block.factory2 div.photo_block figure figcaption{
		text-indent: -1.25em;
		padding-left: 1.25em;
	}
	
	section.track_record div.fl_block.graf_box {
		margin-top: 2.3vw;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.track_record div.fl_block.graf_box div.block{
		width: 48%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.track_record div.fl_block.graf_box div.block:nth-child(n + 3){
		margin-top: 1.3vw;
	}
	
	section.track_record div.fl_block.graf_box div.block h6{
		width: 100%;
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		font-weight: 400;
		margin-top: 0.25em;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo{
		width: 43.4%;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo figure{
		line-height: 0;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo figure + figure{
		margin-top: 3px;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo ul,
	section.track_record div.fl_block.other_box div.box ul{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		margin-top: 1em;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo ul li,
	section.track_record div.fl_block.other_box div.box ul li{
		width: 48%;
		padding: 0.25em 0 0.3em;
		text-align: center;
		color: #FFF;
		background: #b3b3b3;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo ul li:last-of-type,
	section.track_record div.fl_block.other_box div.box ul li:last-of-type{
		background: #80a1c9;
	}
	
	section.track_record div.fl_block.graf_box.graf1 div.block div.photo ul li{
		background: #333333;
	}
	
	section.track_record div.fl_block.graf_box.graf1 div.block div.photo ul li:last-of-type{
		background: #2a71b7;
	}
	
	section.track_record div.fl_block.graf_box div.block figure.graf{
		width: 50%;
	}
	
	section.track_record h3{
		margin-top: 3.8vw;
	}
	
	section.track_record div.fl_block.factory2{
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
		font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		position: relative;
	}
	
	section.track_record div.fl_block.factory2 div.photo_block{
		width: 38.7%;
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
	}
	
	section.track_record div.fl_block.factory2 div.photo_block figure{
		width: 46.4%;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
	}
	
	section.track_record div.fl_block.factory2 p{
		width: 57.4%;
		line-height: 1.8;
	}
	
	section.track_record div.fl_block.other_box{
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
		font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		margin-top: 2em;
	}
	
	section.track_record div.fl_block.other_box div.box{
		width: 23.6%;
	}
	
	section.track_record div.fl_block.other_box div.box figure{
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
	}
	
	section.track_record div.fl_block.other_box div.box figure figcaption{
		margin-bottom: 0.25em;
	}
	
	section.track_record div.fl_block.other_box div.box ul{
		margin-top: 0.25em;
	}

	section.portfolio div.fl_block {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.portfolio div.fl_block.furui p {
		width: 73%;
		font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		line-height: 1.8;
	}
	
	section.portfolio div.fl_block.furui figure {
		width: 23.6%;
	}
	
	section.portfolio h3 {
		margin-top: 2.6vw;
	}
	
	section.portfolio div.fl_block.clogging {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.portfolio div.fl_block.clogging div.block{
		width: 49%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.portfolio div.fl_block.clogging div.block:nth-child(n + 3){
		margin-top: 2.9vw;
	}
	
	section.portfolio div.fl_block.clogging div.block h6{
		width: 100%;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		font-weight: 400;
		margin-bottom: 0.25em;
	}
	
	section.portfolio div.fl_block.clogging div.block figure {
		width: 47.8%;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		position: relative;
	}
	
	section.portfolio div.fl_block.clogging div.block figure:first-of-type::after {
		content: "";
		width: 1vw;
		width: 1cqw;
		max-width: 13px;
		height: 0.77vw;
		height: 0.77cqw;
		max-height: 10px;
		background: url("../images/tafflat/powder/arrow_x2.svg") no-repeat;
		background-size: contain;
		display: inline-block;
		position: absolute;
		top: 40%;
		right: -7%;
	}
	
	section.portfolio div.fl_block.clogging div.block figure figcaption,
	section.portfolio ul li figure figcaption{
		margin-top: 0.15em;
		text-indent: -1.25em;
		padding-left: 1.25em;
	}
	
	section.portfolio div.fl_block.clogging div.block figure:last-of-type figcaption{
		color: #2a71b7;
	}
	
	section.portfolio ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		margin-top: 1.5em;
	}
	
	section.portfolio ul li{
		width: 23.4%;
	}
	
	section.features {
		position: relative;
	}
	
	section.features figure {
		width: 29%;
		position: absolute;
		top: 0;
		right: -3.1vw;
		right: -3.1cqw;
		z-index: 5;
	}
	
	section.features figure figcaption{
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
	}
	
	section.features ul.num_type{
		width: 68%;
		display: block;
	}
	
	section.features ul.num_type li{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		line-height: 1.7;
		letter-spacing: 0.04em;
		position: relative;
		padding-left: 3em;
		padding-bottom: 0.75em;
		border-bottom: 1px solid #e5e5e5;
	}
	
	section.features li + li {
		margin-top: 0.75em;
	}
	
	section.features li span.num{
		display: inline-block;
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0;
		color: #FFF;
		background: #333;
		padding: 0.2em 0.5em 0.3em;
		border-radius: 3px;
		position: absolute;
		top: 0.25em;
		left: 0;
	}
	
	section.features li span.text{
		display: block;
	}
	
	section.features li span.text h6{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		font-weight: 700;
		line-height: 1.7;
		margin-bottom: 0.5em;
	}
	
	section.features li span.text p{
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.739)), 1.07vw, 1.4rem);
		line-height: 1.7;
	}
	
	section.flow h2{
		margin-bottom: 1.5em;
	}
	
	section.flow ul{
		margin-top: 2.3vw;
	}
	
	section.flow ul li{
		border: 1px solid #333;
		background: #e8ebef;
		position: relative;
		padding: 8px;
	}
	
	section.flow ul li + li{
		margin-top: 30px;
	}
	
	section.flow ul li + li::before{
		content: "";
		width: 1.38vw;
		width: 1.38cqw;
		max-width: 18px;
		height: 1.84vw;
		height: 1.84cqw;
		max-height: 24px;
		display: inline-block;
		background: url("../images/tafflat/powder/arrow_y.svg") no-repeat;
		background-size: contain;
		position: absolute;
		top: -31px;
		left: calc(50% - 9px);
		z-index: 0;
	}
	
	section.flow ul li div.fl_block {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		background: #FFF;
		padding: 8px 0;
	}
	
	section.flow ul li div.fl_block h5{
		width: 10em;
		font-size: 2.0rem;
		font-size: clamp(calc((2.0rem * 0.739)), 1.53vw, 2.0rem);
		font-weight: 700;
		color: #2a71b7;
		line-height: 1;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: relative;
	}
	
	section.flow ul li div.fl_block h5::after{
		content: "";
		width: 2.46vw;
		width: 2.46cqw;
		max-width: 32px;
		height: 2.76vw;
		height: 2.76cqw;
		max-height: 36px;
		display: inline-block;
		background: url("../images/tafflat/powder/arrow_x.svg") no-repeat;
		background-size: contain;
		position: absolute;
		top: calc(50% - 18px);
		right: -2em;
		z-index: 3;
	}
	
	section.flow ul li p.cap{
		display: inline-block;
		font-size: 1.3rem;
		font-size: clamp(calc((1.3rem * 0.739)), 1vw, 1.3rem);
		position: absolute;
		bottom: -1.75em;
		right: 1em;
		z-index: 3;
	}
	
	section.flow ul li div.fl_block div.block{
		width: 73.5%;
		padding: 10px 0;
	}
	
	section.flow ul li div.fl_block div.block p strong{
		font-size: 1.9rem;
		font-size: clamp(calc((1.9rem * 0.739)), 1.46vw, 1.9rem);
		font-weight: 600;
		line-height: 1.6;
	}
	
	section.flow ul li div.fl_block div.block p a{
		color: #333;
	}
	
	section.flow ul li div.fl_block div.block p.center{
		padding-left: 6em;
	}
	
	section.flow ul li div.fl_block div.block p strong:nth-child(n + 2) {
		margin-left: 3em;
	}
	
	section.flow ul li div.fl_block div.block div.case_of_box {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		margin-bottom: 0.25em;
	}
	
	section.flow ul li div.fl_block div.block div.case_of_box p{
		display: inline-block;
	}
	
	section.flow ul li div.fl_block div.block p.case_of {
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		position: relative;
		padding-left: 1.25em;
	}
	
	section.flow ul li div.fl_block div.block p.case_of::before {
		content: "●";
		color: #ccd8e9;
		display: inline-block;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	section.flow ul li div.fl_block div.block p.case_of + p.case_of {
		margin-left: 2em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		ont-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		margin-right: 2em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box{
		width: 50%;
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box p{
		margin-bottom: 0.5em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box:nth-child(odd){
		border-right: 1px solid #333;
		padding-right: 1.25em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box:nth-child(even){
		padding-left: 1.25em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box:first-of-type,
	section.flow ul li div.fl_block div.block div.block_inner div.box:nth-child(2){
		padding-bottom: 1em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box:nth-child(n + 3){
		border-top: 1px solid #333;
		padding-top: 1em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure{
		width: 62%;
		position: relative;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure figcaption{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		line-height: 1.3;
		display: inline-block;
		position: absolute;
		bottom: 0.1em;
		right: -8em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure.comparison {
		margin: 0 auto;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure.comparison::before {
		content: "未処理";
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		line-height: 1;
		color: #FFF;
		width: 6em;
		height: 2.5em;
		background: #b3b3b3;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: absolute;
		left: -4em;
		top: 50%;
		z-index: 5;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure.comparison::after {
		content: "タフラット";
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.739)), 1.23vw, 1.6rem);
		line-height: 1;
		color: #FFF;
		width: 6em;
		height: 2.5em;
		background: #80a1c9;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: absolute;
		right: -4em;
		top: 50%;
		z-index: 5;
	}
	
}


@media screen and (min-width:961px) and (max-width: 1300px){
	
	section.track_record div.fl_block.factory div.list::after{
		top: calc(50% - 2.3vw);
		top: calc(50% - 2.3cqw);
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo figure + figure{
		margin-top: 0.23vw;
		margin-top: 0.23cqw;
	}
	
	section.flow ul,
	section.flow ul li + li{
		margin-top: 2.3vw;
		margin-top: 2.3cqw;
	}
	
	section.flow ul li{
		padding: 0.61vw;
		padding: 0.61cqw;
	}
	
	section.flow ul li + li::before{
		top: -2.4vw;
		top: -2.4cqw;
		left: calc(50% - 0.69vw);
		left: calc(50% - 0.69cqww);
	}
	
	section.flow ul li div.fl_block {
		padding: 0.61vw 0;
		padding: 0.61cqw 0;
	}
	
	section.flow ul li div.fl_block div.block{
		padding: 0.7.69vw 0;
		padding: 0.7.69cqw 0;
	}
	
	section.flow ul li div.fl_block h5::after{
		top: calc(50% - 1.38vw);
		top: calc(50% - 1.38cqw);
	}
	
	
}
	

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

@media screen and (max-width: 960px){
	
	div.page_info div.page_info_inner h1.page_label {
		margin-bottom: 0;
	}
	
	section.factors div.img_block{
		background: #efeee1;
		margin-top: 6vw;
		padding: 1em 5%;
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
	}
	
	section.factors div.img_block h4{
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		background: #FFF;
		padding: 1em 0;
	}
	
	section.factors div.img_block div.scllor_block figure{
		width: 300%;
	}
	
	section.mechanism {
		padding-top: 5vw;
	}
	
	section.mechanism div.fl_block{
		display: block;
	}
	
	section.mechanism div.fl_block div.l_block{
		width: 100%;
	}
	
	section.mechanism div.fl_block div.l_block p{
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		line-height: 1.8;
		margin-bottom: 2.5em;
	}
	
	section.mechanism div.fl_block div.l_block div.scllor_block figure{
		width: 210%;
	}
	
	section.mechanism div.fl_block div.r_block{
		width: 100%;
		background: #e8ebef;
		padding: 1em 5%;
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		position: relative;
		margin-top: 4em;
	}
	
	section.mechanism div.fl_block div.r_block h4{
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		background: #FFF;
		padding: 0.75em 0;
		margin-bottom: 1em;
	}
	
	section.mechanism div.fl_block div.r_block p.cap{
		font-size: calc(2.8rem * 0.375);
		font-size: clamp(calc((2.8rem * 0.375)), 2.91vw, 2.8rem);
		line-height: 1.3;
		position: absolute;
		top: -4em;
		left: 0;
	}
	
	section.mechanism div.fl_block div.r_block h5{
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		color: #FFF;
		background: #80a1c9;
		padding: 0.5em 0;
		border-radius: 5vw;
		margin-bottom: 1em;
	}
	
	section.mechanism div.fl_block div.r_block figure + h5 {
		margin-top: 2em;
	}
	
	section.track_record div.intoro{
		display: block;
	}
	
	section.track_record div.intoro h3{
	}
	
	section.track_record div.intoro p{
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		line-height: 1.8;
	}
	
	section.track_record div.fl_block.factory{
		display: block;
	}
	
	section.track_record div.fl_block.factory{
		display: block;
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		margin-top: 3em;
		margin-bottom: 12vw;
		position: relative;
	}
	
	section.track_record div.fl_block.factory div.list{
		width: 100%;
		font-size: calc(2.8rem * 0.375);
		font-size: clamp(calc((2.8rem * 0.375)), 2.91vw, 2.8rem);
		background: #e8ebef;
		padding: 1em 1em 1.5em;
		position: relative;
	}
	
	section.track_record div.fl_block.factory div.list::after{
		content: "";
        width: 4.14vw;
        width: 4.14cqw;
        height: 3.69vw;
        height: 3.69cqw;
        transform: rotate(90deg);
        display: inline-block;
        background: url(../images/tafflat/powder/arrow_x.svg) no-repeat;
        background-size: contain;
        position: absolute;
        bottom: -15.8vw;
        bottom: -15.8cqw;
        left: calc(50% - 2.07vw);
        left: calc(50% - 2.07cqw);
        z-index: 3;
	}
	
	section.track_record div.fl_block.factory div.list h4{
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		background: #FFF;
		padding: 0.75em 0;
		margin-bottom: 1em;
	}
	
	section.track_record div.fl_block.factory div.list ul{
		width: 98%;
		margin: 0 auto;
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
	}
	
	section.track_record div.fl_block.factory div.list ul li{
		width: 26%;
		display: inline-block;
		font-size: calc(2.2rem * 0.375);
		font-size: clamp(calc((2.2rem * 0.375)), 2.29vw, 2.2rem);
		line-height: 1.7;
		padding-left: 0.75em;
		position: relative;
	}
	
	section.track_record div.fl_block.factory div.list ul li:nth-child(2n){
		width: 22%;
	}
	
	section.track_record div.fl_block.factory div.list ul li:nth-child(4n){
		width: 21%;
	}
	
	section.track_record div.fl_block.factory div.list ul li::before{
		content: "● ";
        font-size: 43%;
		color: #80a1c9;
		display: inline-block;
		position: absolute;
		top: 1em;
		left: 0;
	}
	
	section.track_record div.fl_block.factory p {
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		line-height: 1;
		padding-top: 1em;
	}
	
	section.track_record div.fl_block.factory div.photo_block{
		width: 100%;
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
		margin-top: 12vw;
	}
	
	section.track_record div.fl_block.factory div.photo_block figure{
		width: 48%;
		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.track_record div.fl_block.factory div.photo_block figure:nth-child(n + 3){
		margin-top: 1em;
	}
	
	section.track_record div.fl_block.factory div.photo_block figure figcaption,
	section.track_record div.fl_block.factory2 div.photo_block figure figcaption{
		text-indent: -1.25em;
		padding-left: 1.25em;
	}
	
	section.track_record div.fl_block.graf_box {
		display: block;
	}
	
	section.track_record div.fl_block.graf_box div.block{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.track_record div.fl_block.graf_box div.block + div.block{
		margin-top: 5vw;
	}
	
	section.track_record div.fl_block.graf_box div.block h6{
		width: 100%;
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		font-weight: 400;
		margin-bottom: 0.25em;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo{
		width: 43.4%;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo figure{
		line-height: 0;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo figure + figure{
		margin-top: 3px;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo ul,
	section.track_record div.fl_block.other_box div.box ul{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: calc(3.2rem * 0.375);
        font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		margin-top: 1em;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo ul li,
	section.track_record div.fl_block.other_box div.box ul li{
		width: 48%;
		padding: 0.25em 0 0.3em;
		text-align: center;
		color: #FFF;
		background: #b3b3b3;
	}
	
	section.track_record div.fl_block.graf_box div.block div.photo ul li:last-of-type,
	section.track_record div.fl_block.other_box div.box ul li:last-of-type{
		background: #80a1c9;
	}
	
	section.track_record div.fl_block.graf_box.graf1 div.block div.photo ul li{
		background: #333333;
	}
	
	section.track_record div.fl_block.graf_box.graf1 div.block div.photo ul li:last-of-type{
		background: #2a71b7;
	}
	
	section.track_record div.fl_block.graf_box div.block figure.graf{
		width: 50%;
	}
	
	section.track_record h3{
		margin-top: 12vw;
	}
	
	section.track_record div.fl_block.factory2{
		display: block;
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		position: relative;
		margin-bottom: 12vw;
	}
	
	section.track_record div.fl_block.factory2 div.photo_block{
		width: 100%;
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
		margin-top: 8vw;
	}
	
	section.track_record div.fl_block.factory2 div.photo_block figure{
		width: 48%;
		font-size: calc(3.2rem * 0.375);
        font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
	}
	
	section.track_record div.fl_block.factory2 p{
		width: 100%;
		line-height: 1.8;
	}
	
	section.track_record div.fl_block.other_box{
		display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
	}
	
	section.track_record div.fl_block.other_box div.box{
		width: 48%;
	}
	
	section.track_record div.fl_block.other_box div.box:nth-child(n + 3){
		margin-top: 6vw;
	}
	
	section.track_record div.fl_block.other_box div.box figure{
		font-size: calc(3.2rem * 0.375);
        font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
	}
	
	section.track_record div.fl_block.other_box div.box figure figcaption{
		margin-bottom: 0.25em;
	}
	
	section.track_record div.fl_block.other_box div.box ul{
		margin-top: 0.25em;
	}

	section.portfolio div.fl_block {
		display: block;
		margin-bottom: 12vw;
	}
	
	section.portfolio div.fl_block.furui p {
		font-size: calc(3.6rem * 0.375);
		font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		line-height: 1.8;
	}
	
	section.portfolio div.fl_block.furui figure {
		width: 100%;
		margin: 8vw auto 0;
	}
	
	section.portfolio div.fl_block.clogging {
		display: block;
	}
	
	section.portfolio div.fl_block.clogging div.block{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section.portfolio div.fl_block.clogging div.block + div.block{
		margin-top: 5vw;
	}
	
	section.portfolio div.fl_block.clogging div.block h6{
		width: 100%;
		font-size: calc(3.2rem * 0.375);
        font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		font-weight: 400;
		margin-bottom: 0.25em;
	}
	
	section.portfolio div.fl_block.clogging div.block figure {
		width: 47.8%;
		font-size: calc(3.2rem * 0.375);
        font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		position: relative;
	}
	
	section.portfolio div.fl_block.clogging div.block figure:first-of-type::after {
		content: "";
		width: 3vw;
		width: 3cqw;
		height: 2.31vw;
		height: 2.31cqw;
		background: url("../images/tafflat/powder/arrow_x2.svg") no-repeat;
		background-size: contain;
		display: inline-block;
		position: absolute;
		top: 34%;
		right: -8%;
	}
	
	section.portfolio div.fl_block.clogging div.block figure figcaption,
	section.portfolio ul li figure figcaption{
		text-indent: -1.25em;
		padding-left: 1.25em;
	}
	
	section.portfolio div.fl_block.clogging div.block figure:last-of-type figcaption{
		color: #2a71b7;
	}
	
	section.portfolio ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: calc(3.2rem * 0.375);
        font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		margin-top: 1.5em;
	}
	
	section.portfolio ul li{
		width: 48%;
	}
	
	section.portfolio ul li:nth-child(n + 3){
		margin-top: 6vw;
	}
	
	section.features {
		position: relative;
	}
	
	section.features figure {
		width: 60%;
		margin: 8vw auto 0;
		z-index: 5;
	}
	
	section.features figure 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;
	}
	
	section.features ul.num_type{
		display: block;
	}
	
	section.features ul.num_type li{
		min-height: 4em;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        font-size: calc(3.4rem * 0.375);
        font-size: clamp(calc((3.4rem * 0.375)), 3.54vw, 3.4rem);
        line-height: 1.7;
        letter-spacing: 0.04em;
        position: relative;
        padding-left: 3em;
        padding-bottom: 0.75em;
        border-bottom: 1px solid #e5e5e5;
	}
	
	section.features li + li {
		margin-top: 0.75em;
	}
	
	section.features li span.num{
		display: inline-block;
        font-size: calc(3.6rem * 0.375);
        font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
        font-weight: 500;
        line-height: 1;
        letter-spacing: 0;
        color: #FFF;
        background: #333;
        padding: 0.2em 0.5em 0.3em;
        border-radius: 0.6vw;
        position: absolute;
        top: 0.25em;
        left: 0;
	}
	
	section.features li span.text{
		display: block;
	}
	
	section.features li span.text h6{
		font-size: calc(3.6rem * 0.375);
        font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		font-weight: 700;
		line-height: 1.7;
		margin-bottom: 0.5em;
	}
	
	section.features li span.text p{
		font-size: calc(3.4rem * 0.375);
        font-size: clamp(calc((3.4rem * 0.375)), 3.54vw, 3.4rem);
        line-height: 1.7;
	}
	
	section.flow ul{
		margin-top: 5vw;
	}
	
	section.flow ul li{
		border: 1px solid #333;
		background: #e8ebef;
		position: relative;
		padding: 8px;
	}
	
	section.flow ul li + li{
		margin-top: 10vw;
	}
	
	section.flow ul li:nth-child(3){
		margin-top: 15vw;
	}
	
	section.flow ul li + li::before{
		content: "";
		width: 5.52vw;
		width: 5.52cqw;
		height: 7.36vw;
		height: 7.36cqw;
		display: inline-block;
		background: url("../images/tafflat/powder/arrow_y.svg") no-repeat;
		background-size: contain;
		position: absolute;
		top: -7.9vw;
		top: -7.9cqw;
		left: calc(50% - 2.76vw);
		left: calc(50% - 2.76cqw);
		z-index: 0;
	}
	
	section.flow ul li div.fl_block {
		display: block;
		background: #FFF;
		padding: 1.6vw 0;
	}
	
	section.flow ul li div.fl_block h5{
		font-size: calc(3.6rem * 0.375);
        font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		font-weight: 700;
		text-align: center;
		color: #2a71b7;
		line-height: 1;
		position: relative;
		padding: 0.75em 0 5vw;
	}
	
	section.flow ul li div.fl_block h5::after{
		content: "";
		width: 4.14vw;
		width: 4.14cqw;
		height: 3.69vw;
		height: 3.69cqw;
		transform: rotate(90deg);
		display: inline-block;
		background: url("../images/tafflat/powder/arrow_x.svg") no-repeat;
		background-size: contain;
		position: absolute;
		bottom: -1.8vw;
		bottom: -1.8cqw;
		left: calc(50% - 2.07vw);
		left: calc(50% - 2.07cqw);
		z-index: 3;
	}
	
	section.flow ul li p.cap{
		display: inline-block;
		font-size: calc(3.0rem * 0.375);
        font-size: clamp(calc((3.0rem * 0.375)), 3.12vw, 3.0rem);
		text-indent: -1em;
		padding-left: 1em;
		position: absolute;
		bottom: -3.75em;
		left: 0;
		z-index: 3;
	}
	
	section.flow ul li div.fl_block div.block{
		width: 100%;
		padding: 4vw 5%;
	}
	
	section.flow ul li div.fl_block div.block p strong{
		font-size: calc(3.6rem * 0.375);
        font-size: clamp(calc((3.6rem * 0.375)), 3.75vw, 3.6rem);
		font-weight: 600;
		line-height: 1.6;
	}
	
	section.flow ul li div.fl_block div.block p a{
		color: #333;
	}
	
	section.flow ul li div.fl_block div.block p.center{
		text-align: center;
	}
	
	section.flow ul li div.fl_block div.block div.case_of_box {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		margin-bottom: 0.5em;
	}
	
	section.flow ul li div.fl_block div.block p.case_of {
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		position: relative;
		padding-left: 1.25em;
	}
	
	section.flow ul li div.fl_block div.block p.case_of::before {
		content: "●";
		color: #ccd8e9;
		display: inline-block;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box{
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		padding-bottom: 1.5em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box + div.box{
		border-top: 1px solid #333;
		padding-top: 1em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box p{
		margin-bottom: 0.5em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure{
		width: 62%;
		position: relative;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure figcaption{
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		line-height: 1.3;
		display: inline-block;
		position: absolute;
		bottom: 0.25em;
		right: -7em;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure.comparison {
		margin: 0 auto;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure.comparison::before {
		content: "未処理";
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		line-height: 1;
		color: #FFF;
		width: 6em;
		height: 2.5em;
		background: #b3b3b3;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: absolute;
		left: -4em;
		top: 50%;
		z-index: 5;
	}
	
	section.flow ul li div.fl_block div.block div.block_inner div.box figure.comparison::after {
		content: "タフラット";
		font-size: calc(3.2rem * 0.375);
		font-size: clamp(calc((3.2rem * 0.375)), 3.33vw, 3.2rem);
		line-height: 1;
		color: #FFF;
		width: 6em;
		height: 2.5em;
		background: #80a1c9;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		position: absolute;
		right: -4em;
		top: 50%;
		z-index: 5;
	}
}