@charset "UTF-8";

@media screen and (min-width:751px) {
	
	.factory_cont{
		width:100%;
	}
	
	.factory_cont.bgbox{
		background:#f2f2f2;
	}
	
	.factory_cont .top_flexbox{
		display: flex;
		justify-content: space-between;
		width:90%;
		max-width: 1060px;
		margin:0 auto;
		padding:130px 0 240px 0;
	}
	
	.factory_cont .top_flexbox .illbox{
		width:55%;
	}
	
	.factory_cont .top_flexbox .txcont{
		padding:0 40px;
		width:calc(100% - 55%);
	}
	
	.factory_cont .top_flexbox .txcont h2{
		text-align: left;
		font-size: 3.6rem;
		font-weight: 600;
		padding:0 0 20px 0;
		position: relative;
		margin:0 0 40px 0;
	}
	
	.factory_cont .top_flexbox .txcont h2::before{
		content: "";
		width:60px;
		border-bottom: 2px solid #000;
		position: absolute;
		left:0;
		bottom:0;
	}
	
	.factory_cont .top_flexbox .txcont p{
		font-size: 1.6rem;
		line-height: 1.8em;
	}
	
	.factory_cont .floor_cont{
		padding-bottom:0;
		position: relative;
	}
	
	.factory_cont .floor_cont .floornum{
		width:190px;
		position: absolute;
		top:-75px;
		left:max(5%,calc((100% - 1060px) / 2));
	}
	
	.factory_cont .floor_cont .floornum.rt{
		width:190px;
		position: absolute;
		top:-75px;
		right:max(5%,calc((100% - 1060px) / 2));
		left: auto;
	}
	
	.factory_cont .floor_cont .phbox{
		width:100%;
		height:48vw;
	}
	
	.factory_cont .floor_cont .txcont{
		padding:75px 0;
		width:90%;
		max-width: 780px;
		margin:0 auto;
	}
	
	.factory_cont .floor_cont .txcont .sub{
		font-size: 1.4rem;
		text-align: center;
	}
	
	.factory_cont .floor_cont .txcont h3{
		font-size: 4rem;
		font-weight: 600;
		text-align: center;
		padding:0 0 15px 0;
		margin:0 0 50px 0;
		position: relative;
	}
	
	.factory_cont .floor_cont .txcont h3::after{
		content: "";
		width:60px;
		border-bottom: 2px solid #000;
		position: absolute;
		bottom:0;
		left:calc(50% - 30px);
	}
	
	.factory_cont .floor_cont .txcont .txbox + .txbox{
		margin:40px 0 0 0;
	}
	
	.factory_cont .floor_cont .txcont .txbox .tl{
		font-size: 2.2rem;
		font-weight: 600;
		margin:0 0 5px 0;
		line-height: 1.6em;
	}
	
	.factory_cont .floor_cont .txcont .txbox .tx{
		font-size: 1.6rem;
		line-height: 2em;
	}
	
	.factory_cont .floor_cont .slidecont{
		width:90%;
		max-width: 980px;
		margin: 0 auto;
		padding-bottom: 240px;
	}
	
	.factory_cont .floor_cont .slidecont .slick-counter{
		font-size: 1.6rem;
		margin:0 15px;
	}
	
	.factory_cont .floor_cont .slidecont .arrowcont{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		padding:10px 0 0 0;
	}
	
	.factory_cont .floor_cont .slidecont .arrowcont .left_arrow_btn{
		width:28px;
		height:28px;
		background:url("/new/new_2024/images/factory/prev.svg") no-repeat;
		background-size: contain;
		background-position: left 0 bottom 7px;
	}
	
	.factory_cont .floor_cont .slidecont .arrowcont .right_arrow_btn{
		width:28px;
		height:28px;
		background:url("/new/new_2024/images/factory/next.svg") no-repeat;
		background-size: contain;
		background-position: left 0 top 9px;
		order: 1;
	}
	
	.bottom_cont{
		padding:80px 5%;
		background:url("/new/new_2024/images/factory/bottom_bg.jpg") no-repeat;
		background-size: cover;
		background-position: center;
	}
	
	.bottom_cont .sub{
		font-size: 1.4rem;
		text-align: center;
		color:#fff;
	}
	
	.bottom_cont h3{
		font-size: 4rem;
		font-weight: 600;
		text-align: center;
		padding:0 0 15px 0;
		margin:0 0 50px 0;
		position: relative;
		color:#fff;
	}
	
	.bottom_cont h3::after{
		content: "";
		width:60px;
		border-bottom: 2px solid #fff;
		position: absolute;
		bottom:0;
		left:calc(50% - 30px);
	}
	
	.bottom_cont .tx{
		font-size: 1.4rem;
		text-align: center;
		margin:0 0 50px 0;
		position: relative;
		color:#fff;
		letter-spacing: 0.15em;
		line-height: 2em;
	}
}


@media screen and (max-width:750px) {
	.factory_cont{
		width:100%;
	}
	
	.factory_cont.bgbox{
		background:#f2f2f2;
	}
	
	.factory_cont .top_flexbox{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		width:90%;
		max-width: 1060px;
		margin:0 auto;
		padding:50px 0 100px 0;
	}
	
	.factory_cont .top_flexbox .illbox{
		width:100%;
		order: 1;
		margin:30px 0 0 0;
	}
	
	.factory_cont .top_flexbox .txcont{
		padding:0 0;
		width:100%;
	}
	
	.factory_cont .top_flexbox .txcont h2{
		text-align: center;
		font-size: 1.8rem;
		font-weight: 600;
		padding:0 0 15px 0;
		position: relative;
		margin:0 0 20px 0;
	}
	
	.factory_cont .top_flexbox .txcont h2::before{
		content: "";
		width:30px;
		border-bottom: 2px solid #000;
		position: absolute;
		left:calc(50% - 15px);
		bottom:0;
	}
	
	.factory_cont .top_flexbox .txcont p{
		font-size: 1.2rem;
		line-height: 1.8em;
	}
	
	.factory_cont .floor_cont{
		padding-bottom:0;
		position: relative;
	}
	
	.factory_cont .floor_cont .floornum{
		width:55px;
		position: absolute;
		top:-20px;
		left:max(5%,calc((100% - 1060px) / 2));
	}
	
	.factory_cont .floor_cont .floornum.rt{
		width:55px;
		position: absolute;
		top:-20px;
		right:max(5%,calc((100% - 1060px) / 2));
		left: auto;
	}
	
	.factory_cont .floor_cont .phbox{
		width:100%;
		height:48vw;
	}
	
	.factory_cont .floor_cont .txcont{
		padding:50px 0;
		width:90%;
		max-width: 780px;
		margin:0 auto;
	}
	
	.factory_cont .floor_cont .txcont .sub{
		font-size: 1rem;
		text-align: center;
	}
	
	.factory_cont .floor_cont .txcont h3{
		font-size: 2rem;
		font-weight: 600;
		text-align: center;
		padding:0 0 15px 0;
		margin:0 0 40px 0;
		position: relative;
	}
	
	.factory_cont .floor_cont .txcont h3::after{
		content: "";
		width:30px;
		border-bottom: 2px solid #000;
		position: absolute;
		bottom:0;
		left:calc(50% - 15px);
	}
	
	.factory_cont .floor_cont .txcont .txbox + .txbox{
		margin:40px 0 0 0;
	}
	
	.factory_cont .floor_cont .txcont .txbox .tl{
		font-size: 1.6rem;
		font-weight: 600;
		margin:0 0 0 0;
		line-height: 1.6em;
	}
	
	.factory_cont .floor_cont .txcont .txbox .tx{
		font-size: 1.2rem;
		line-height: 2em;
	}
	
	.factory_cont .floor_cont .slidecont{
		width:90%;
		max-width: 980px;
		margin: 0 auto;
		padding-bottom: 100px;
	}
	
	.factory_cont .floor_cont .slidecont .slick-counter{
		font-size: 1.2rem;
		margin:0 15px;
	}
	
	.factory_cont .floor_cont .slidecont .arrowcont{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		padding:10px 0 0 0;
	}
	
	.factory_cont .floor_cont .slidecont .arrowcont .left_arrow_btn{
		width:25px;
		height:25px;
		background:url("/new/new_2024/images/factory/prev.svg") no-repeat;
		background-size: contain;
		background-position: left 0 bottom 7px;
	}
	
	.factory_cont .floor_cont .slidecont .arrowcont .right_arrow_btn{
		width:25px;
		height:25px;
		background:url("/new/new_2024/images/factory/next.svg") no-repeat;
		background-size: contain;
		background-position: left 0 top 9px;
		order: 1;
	}
	
	.bottom_cont{
		padding:40px 5%;
		background:url("/new/new_2024/images/factory/bottom_bg.jpg") no-repeat;
		background-size: cover;
		background-position: center;
	}
	
	.bottom_cont .sub{
		font-size: 1rem;
		text-align: center;
		color:#fff;
	}
	
	.bottom_cont h3{
		font-size: 2rem;
		font-weight: 600;
		text-align: center;
		padding:0 0 10px 0;
		margin:0 0 20px 0;
		position: relative;
		color:#fff;
	}
	
	.bottom_cont h3::after{
		content: "";
		width:30px;
		border-bottom: 2px solid #fff;
		position: absolute;
		bottom:0;
		left:calc(50% - 15px);
	}
	
	.bottom_cont .tx{
		font-size: 1.2rem;
		text-align: center;
		margin:0 0 20px 0;
		position: relative;
		color:#fff;
		letter-spacing: 0.15em;
		line-height: 2em;
	}
}

