@charset "utf-8";

/* Laptop small S */
@media all and (min-width:1024px) and (max-width:1440px){
	.graph_txt{
		width: 80%;
		height: 100%;
	}
	.graph_percent span > p{
		font-size: var(--font_size_mt_body2);
		line-height: var(--line_height_mt_body2);
		letter-spacing: var(--letter_spacing_mt_body2);
	}
}
/* Laptop E */

/* Tablet and Mobile S */
@media all and (max-width:1023px){

	/* cards S */
	.wrap_cards>div>.card_txt p{
		font-size: var(--font_size_mt_body1);
		line-height: var(--line_height_mt_body1);
		letter-spacing: var(--letter_spacing_mt_body1);

	}
	/* cards E */

}
/* Tablet and Mobile E */

/* Tablet S */
@media all and (min-width:768px) and (max-width:1023px){
	.graph_txt{
		width: 70%;
		height: 100%;
	}
	.graph_percent span > p{
		font-size: var(--font_size_mt_body2);
		line-height: var(--line_height_mt_body2);
		letter-spacing: var(--letter_spacing_mt_body2);
	}
}
/* Tablet E */

/* Mobile S */
@media all and (max-width:767px){
	/* common S */
	.main_itr{
        margin-bottom: 40px;
    }
    .main_itr h2{
        margin-bottom: 12px;
    }
    .main_itr p{
        font-size: var(--mt_font_size3);
        line-height: var(--mt_line_height3);
    }
	/* common E *

	/* banner S */
	.banner .container h2{
		left: 50%;
		transform: translate(-50%, -50%);
		width: max-content;
		text-align: center;
	}
	:lang(en) .banner .container h2{
		max-width: calc(100vw - 10px);
	}

	/* banner E */

	/* partner S */
	.logo_wrap{
		pointer-events: none;
	}
	.partner_logos ul li{
        width: 49%;
        max-width: 240px;
        height: 75px;
        margin-bottom: 10px;
    }
    .logo_01,
    .logo_03,
    .logo_05,
    .logo_07,
    .logo_09,
    .logo_11,
    .logo_13,
    .logo_15{
        margin-right: auto;
    }
    .logos ul li{
        height: 110px;
        width: calc(100% /3);
    }
	/* partner E */

	/* sourcing S */

	.graph_bg{
		right: 0;
	}
	.graph{
		height: 70%;
		max-width: 360px;
		min-width: calc(320px - 46px);
		width: calc(100vw - 46px) ;
		left: 50%;
		transform: translate(-50%, 100px);

		flex-direction: column;
	}
	.graph_txt{
		flex-shrink: none;
		order: 2;
		flex-direction: row;
		width: 100%;
		height: 30%;
		min-height: 0;
		justify-content: space-between;
	}
	.graph_txt>div{
		height: 100%;
		width: 45%;
		font-size: var(--font_size_mt_body2);
		line-height: var(--line_height_mt_body2);
		letter-spacing: var(--letter_spacing_mt_body2);
	}
	.graph_txt_02{
		margin: 0;
	}
	.graph_txt_01::after,
	.graph_txt_02::after{
		display: none;

	}
	.graph_tit {
		top: 80px;
		left: 23px;
		width: calc(100% - 46px);
	}
	.graph_percent_2021 span,
	.graph_percent_2022 span,
	.graph_percent_2021::after,
	.graph_percent_2022::after{
		width: 40px;
	}
	.graph_percent_2021{
		height: 70%;
	}
	.graph_percent_2022{
		height: 80%;
	}
	.graph_percent_2021 span p,
	.graph_percent_2022 span p{
		width: 80px;
		transform: translateX(10px);

		font-size: var(--font_size_mt_body1);
	}

	.graph_percent{
		padding-bottom: 30px;
	}

	/* sourcing E */
	/* strategy S */

	.wrap_strategy .container{
		position: absolute;
		top:0;
		left: 0;
		padding: 0;
	}
	.wrap_strategy{
		height: auto;
	}
	.wrap_strategy > img{
		position: relative;
		top: 0;
		left: 0;
		width: 100%;
		min-height: 0;
		transform: translate(0 ,0);
	}
	.wrap_strategy .container h2{
		top: 50%;
		right: 30px;
		transform: translateY(-50%);
	}
	:lang(en) .wrap_strategy .container h2{
		width: 270px;
		right: 0;
		left: auto;
	}

	/* strategy E */
	/* cards S */

	.wrap_cards{
		flex-direction: column;
	}
	.wrap_cards>div{
		width: 100%;
		height: 330px;
	}
	.wrap_cards>div>.card_txt{
	}
	.wrap_cards>div>.card_txt h2{
		margin-bottom: 24px;
	}
	/* cards E */
	
	/* footer S */
	#ft .container .footer_logo{
		background-position: 0 center;
		background-size: 106px;
	}

	/* footer E */


}
/* Mobile E */