@charset "utf-8";
/* CSS Document */

/* ===============================
 TOP
===============================*/
#top .block{
	padding: 35px 0 40px;
}


/*-------- main -------*/

#top .main{
	background: url(../img/top/main_bg-sp.jpg) no-repeat;
	background-size: cover;
	background-position: right bottom;
	height: 54.4vw;
	min-height: 350px;
}
#top .main_txt{
	padding-top: 19vw;
	color: #ffffff;
}
@media screen and (max-width:635px){
#top .main_txt{
	padding-top: 125px;
}
}
	#top .main_txt .txt1{
	    max-width: 222px;
	    width: 60%;
	}
	#top .main_txt .txt2{
	    font-size: 12px;
	    margin-top: 10px;
	    line-height: 1.6;
	}

#top .movie_block{
	background: url(../img/top/movie_bg.jpg) no-repeat right bottom;
	background-size: cover;
	padding: 40px 0;
}
#top .movie_wrap_wrap{
	margin: 0 auto;
	max-width: 768px;
}
#top .movie_block .movie_wrap{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0px 0px 5px 0px rgba(102, 102, 102, 0.2);
}
#top .movie_block .movie_wrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*-------- block1 works -------*/
#top .works_block{
	background: url(../img/top/works_bg.jpg) no-repeat;
	background-size: cover;
}
	#top .works_block .inner{
	    text-align: center;
	}
#top .works_ttl{
	font-size: 32px;
	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom: 16px;
}
#top .works_txt{
	font-size: 13px;
	line-height: 1.4;
	width: 250px;
	margin: 0 auto 16px;
	text-align: center;
	align-items: center;
}
#top .works_list{
	display: inline-flex;
	justify-content: space-between;
	align-items: center;
	max-width: 380px;
}
	#top .works_list li.imgbox.img1{
	    width: 21.4%;
	}
	#top .works_list li.imgbox.img2{
	    width: 34.1%;
	}
	#top .works_list li.imgbox.img3{
	    width: 22.8%;
	}
	#top .works_list .deco{
	    width: 3%;
	}

/*-------- block2 business -------*/
#top .business_block{
	background: url(../img/top/business_bg.jpg) no-repeat;
	background-size: cover;
}
#top .business_ttl{
	font-size: 25px;
	color: #000000;
	margin-bottom: 16px;
	text-align: center;
	letter-spacing: 0.1em;
}
#top .business_txt{
	font-size: 13px;
	color: #ffffff;
	line-height: 1.4;
	margin-bottom: 28px;
	text-align: center;
}
#top .business_list{
	margin: 0 auto;
	max-width: 510px;
	/*box-shadow: 0 0 10px 5px #0C1725;*/
}
	#top .business_list .type{
	    display: table;
	    width: 100%;
	    height: 100%;
	    position: relative;



		margin-bottom:20px;
	}
	#top .business_list a{
	    text-decoration: none;
	    height: 130px;
	    display: table-cell;
	    width: 100%;
	    vertical-align: middle;
	    text-align: center;
	    position: relative;
	}
	#top .business_list .type a:before{
	    display: block;
	    content: "";
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    background: url(../img/top/business_type1.jpg) no-repeat;
	    background-size:cover;
	    top: 0;
	    left: 0;
	}
	#top .business_list .type.type1 a:before{
	    background-image: url(../img/top/business_type1.jpg);
	}
	#top .business_list .type.type2 a:before{
	    background-image: url(../img/top/business_type2.jpg);
	}
	#top .business_list .type.type3 a:before{
	    background-image: url(../img/top/business_type3.jpg);
	}
	#top .business_list .btnbox{
	    position: relative;
	}
	#top .business_list .ttl{
	    font-size: 20px;
	    color: #fff;
	    letter-spacing: 0.1em;
	    text-shadow: 0 0 10px rgba(19, 34, 28, .6),
	        0 0 10px rgba(19, 34, 28, .6),
	        0 0 10px rgba(19, 34, 28, .6),
	        0 0 10px rgba(19, 34, 28, .6);
	}

	#top .business_block .btn_more{
	    line-height: 25px;
	    width: 125px;
	}

/*-------- block3 message -------*/
#top .msg_block{
	background: url(../img/top/message_bg.jpg) no-repeat;
	background-size: cover;
	position: relative;
}
#top .msg_block .cmn-width{
	margin: 0 15px;
	position: relative;
}
#top .msg_ttl{
	font-size: 22px;
	line-height: 1.6;
	margin-bottom: 20px;
	text-align: center;
}
#top .msg_txt1{
	font-size: 13px;
	line-height: 1.4;
	margin-bottom: 20px;
	text-align: center;
}
#top .msg_txt2{
	font-size: 11px;
	line-height: 1.4;
	margin-bottom: 55vw;
	text-align: center;
	letter-spacing: 0.15em;
}
#top .msg_deco{
	position: absolute;
	bottom: 0;
	width: 100%;
}
#top .msg_deco .inner{
	width: 63.8%;
	margin: 0 auto;
	max-width: 430px;
}

/*-------- block4 news -------*/
#top .news_block{
	background: url(../img/top/business_bg02.jpg) no-repeat;
	background-size: cover;
}
#top .news_block .inner{
	max-width: 510px;
	margin: 0 auto;
}
#top .news_ttl{
	text-align: center;
	margin-bottom: 24px;
}
#top .news_ttl span{
	font-size: 25px;
	color: #000000;
	padding: 0 5px 10px;
	border-bottom:1px solid #000;
	display: inline-block;
	letter-spacing: 0.1em;
}
#top .btn_more{
	margin-top: 20px;
}

/*-------- ニュース一覧レイアウト（PC：1000px～） -------*/
@media screen and (min-width:1000px){
	#top .news_ttl{
	    position: absolute;
	    left: 0;
	    top: 50%;
	    margin-top: -52px;
	}
	#top .news_ttl span{
	    border:none;
	    padding: 0;
	    font-size: 36px;
	}
	#top .news_block .cmn-width{
	    position: relative;
	}
	#top .news_block .inner{
	    max-width: 826px;
	    margin: 0;
	    margin-left: 214px;
	    padding-left: 64px;
	    border-left:1px solid #000;
	}
	#top .news_block .btn_more{
	    width: 115px;
	    line-height: 30px;
	    position: absolute;
	    left: 0;
	    top: 50%;
	    margin: 0;
	}

}

#top .block5 {
	background: url(../img/top/business_bg03.jpg) ;
	background-size:cover;
}
#top .sns_blc_list .blc_instagram,
#top .sns_blc_list .blc_youtube{
	box-sizing: border-box;
	background-color: #fff;
	border-radius: 5px;
}
#top .sns_blc_list .blc_instagram{
	padding: 4.46vw 3.62vw 3.62vw 3.62vw;
}
#top .sns_blc_list .instagram_ttl{
	width: 30.55vw;
	margin-bottom: 4.83vw;
}
#top .sns_blc_list .instagram_list{
	display: flex;
	flex-wrap: wrap;
}
#top .sns_blc_list .instagram_item{
	display: block;
	box-sizing: border-box;
	border: solid 2px #F0F0F0;
	width: calc((100% - 2.17vw) / 2);
}
#top .sns_blc_list .instagram_item:not(:nth-child(2n)){
	margin-right: 2.17vw;
}
#top .sns_blc_list .instagram_item:nth-child(n+3){
	margin-top: 2.17vw;
}
#top .sns_blc_list .blc_youtube .movie_wrap{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	background-color: #fff;
}
#top .sns_blc_list .blc_youtube .movie_wrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#top .sns_blc_list .blc_youtube .box_ttl{
	text-align: center;
	font-size: 18px;
	line-height: 1.3;
	padding: 3.62vw;
}
#top .sns_blc_list .blc_list{
	background-color: #fff;
	display: flex;
	justify-content: center;
	padding: 3.86vw 0;
}
#top .sns_blc_list .blc_list .icon{
	display: block;
}
#top .sns_blc_list .blc_list .icon:not(:last-child){
	margin-right: 9.66vw;
}
#top .sns_blc_list .blc_list .icon img{
	height: 7.24vw;
	width: auto;
}

@media screen and (max-width:767px){
	#top .sns_blc_list{
		padding-bottom: 30px;
	}
	#top .sns_blc_list .sns_blc:not(:last-child){
		margin-bottom: 4.83vw;
	}
}

@media screen and (min-width:768px){
	#top .sns_blc_list .blc_instagram{
		padding: 13px 15px;
	}
	#top .sns_blc_list .instagram_ttl{
		width: 137px;
		margin-bottom: 12px;
	}
	#top .sns_blc_list .instagram_item{
		width: calc((100% - 5px) / 2);
	}
	#top .sns_blc_list .instagram_item:not(:nth-child(2n)){
		margin-right: 5px;
	}
	#top .sns_blc_list .instagram_item:nth-child(n+3){
		margin-top: 5px;
	}
	#top .sns_blc_list .blc_youtube .box_ttl{
		font-size: 22px;
		padding: 20px;
	}
}
@media screen and (min-width:768px) and (max-width:1024px){
	#top .sns_blc_list{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#top .sns_blc_list .sns_blc{
		width: calc((100% - 20px) / 2);
		margin-bottom: 20px;
	}
}
@media screen and (min-width:1024px){
	#top .sns_blc_list{
		display: flex;
		align-items: flex-start;
	}
	#top .sns_blc_list .blc_twitter,
	#top .sns_blc_list .blc_instagram{
		width: 300px;
		margin-right: 18px;
	}
	#top .sns_blc_list .blc_youtube{
		flex:1;
		margin-left: 18px;
	}
	#top .sns_blc_list .blc_list{
		width: 202px;
		padding: 16px;
	}
	#top .sns_blc_list .blc_list .icon:not(:last-child){
		margin-right: 20px;
	}
	#top .sns_blc_list .blc_list .icon img{
		height: 30px;
	}
}

/* ===============================
 scrap 貴金属スクラップ
===============================*/
#scrap .cmn-main{
	background-image:url(../img/scrap/main_bg-sp.jpg);
}
#scrap .block{
	padding: 35px 0;
}
#scrap .cmn-txt1{
	margin-bottom: 24px;
}


/*-------- block6 lead 20230427 add -------*/
#scrap .block6{
	position: relative;
	padding-bottom: 30px;
}
#scrap .block6:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 11px 14.5px 0 14.5px;
	border-color: #fff transparent transparent transparent;
	bottom: -10px;
	left: calc((100% - 29px) / 2);
}
#scrap .block6 .lead-service-list{
	display: flex;
	justify-content: space-between;
}
#scrap .block6 .lead-service-item{
	box-sizing: border-box;
	/* width: calc((100% - 20px) / 3); */
	width: calc((100% - 20px) / 2);
	border: 1px solid #ccc;
	padding: 15px 4px;
}
#scrap .block6 .lead-service-item .txtbox{
	font-size: 13px;
	line-height: 1.4;
	min-height: 5.6em;
	text-align: center;
}
#scrap .block6 .lead-service-item .txtbox .subttl{
	font-size: 10px;
}
#scrap .block6 .lead-service-item .imgbox{
	min-height: 37px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#scrap .block6 .lead-service-item .imgbox img{
	width: 83px;
}
#scrap .block6 .lead-service-item.item2 .imgbox img{
	width: 66px;
}
#scrap .block6 .lead-service-item.item3 .imgbox img{
	width: 96px;
}

/*-------- block1 materials -------*/
#scrap .block1{
	padding-bottom: 0;
}
#scrap .material_list{
	display: flex;
	flex-wrap: wrap;
}
#scrap .material_list li{
	width: 48%;
}
	#scrap .material_list .txtbox{
	    font-size: 14px;
	    line-height: 1.4;
	    margin: 8px 0 24px;
	    text-align: center;
	    letter-spacing: 0.1em;
	}

/*-------- block2 service -------*/
#scrap .block2{
	background: url(../img/scrap/service_bg1.jpg) no-repeat center bottom;
	background-size: cover;
	color:#fff;
	padding-bottom: calc(35px + 5vw);
}
#scrap .block2 .ttl1{
	display: table;
	width: 100%;
	margin-bottom: -11px;
}
	#scrap .block2 .ttl1 span{
	    display: table-cell;
	    font-size: 23px;
	    letter-spacing: 0.15em;
	}
	#scrap .block2 .ttl1 span.deco{
	    width: 30%;
	    position: relative;
	}
	#scrap .block2 .ttl1 span.deco:before{
	    content:"";
	    display: block;
	    position: absolute;
	    width: 100%;
	    height: 1px;
	    background-color:#fff;
	    top: 50%;
	    left: 0;
	}
#scrap .block2 .ttl1 span.txt{
	padding: 0 10px;
	text-align: center;
}

#scrap .block2 .innerbox{
	border: 1px solid #fff;
	border-top: none;
	padding: 30px 5% 10px;
}

#scrap .block2 .cmn-txt1{
	max-width: 600px;
	margin: 0 auto 16px;
}
#scrap .block2 .txt1{
	font-size: 18px;
	letter-spacing: 0.05em;
	text-align: center;
	margin-bottom: 24px;
}
#scrap .block2 .txt1 img{
	width: 10.5px;
	vertical-align: middle;
	margin: 0 4px;
}
@media screen and (max-width:413px){
	#scrap .block2 .txt1 img{
	    display: block;
	    margin: 8px auto 5px;
	}
}

#scrap .service_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: flex-start;
	align-items: flex-start;
}
	#scrap .service_list li{
	    width: 33.3%;
	    margin-bottom: 20px;
	}
	#scrap .service_list .imgbox{
	    text-align: center;
	}
	#scrap .service_list .imgbox img{
	    width: 70%;
	    max-width: 158px;
	}
	#scrap .service_list .txtbox{
	    font-size: 11px;
	    line-height: 1.4;
	    text-align: center;
	    margin-top: 8px;
	}
@media screen and (max-width:400px){
#scrap .service_list li{
	width: 50%;
}
}

/*-------- block3 service-sub -------*/
#scrap .block3{
	background: url(../img/scrap/service_bg2.png) no-repeat center top;
	background-size: cover;
	margin-top: -5vw;
	padding-top: calc(30px + 5vw);
	color:#000;
}

/*-------- block4 strengths -------*/
#scrap .block4{
	background: url(../img/scrap/strengths_bg.jpg) no-repeat center center;
	background-size: cover;
}

/*-------- block7 urban-mining 20230427 add -------*/
#scrap .block7{
	background: url(../img/scrap/urban-mining_bg.jpg) no-repeat center bottom, #fff;
	background-size: 100% auto;
	padding-bottom: 75px;
}
#scrap .block7 .wrap-catch{
	display: flex;
	justify-content: center;
	margin-bottom: 20px;
}
#scrap .block7 .catch{
	background-color: #0CB0BE;
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
	text-align: center;
	padding: 10px 25px;
}
#scrap .block7 .lead-txt{
	font-size: 13px;
	line-height: 1.4;
	text-align: center;
}
#scrap .block7 .lead-txt p:not(:last-child){
	margin-bottom: 1.4em;
}
#scrap .block7 .urban-mining-list{
	margin-top: 20px;
}
#scrap .block7 .urban-mining-list-item{
	background-color: #fff;
	box-shadow: 0 0 5px rgba(189, 210, 197, .4);
	padding: 20px;
}
#scrap .block7 .urban-mining-list-item:not(:last-child){
	margin-bottom: 15px;
}
#scrap .block7 .urban-mining-list-item .item-ttl{
	font-size: 18px;
	margin-bottom: 15px;
}
#scrap .block7 .urban-mining-list-item .wrap-main .txt{
	font-size: 13px;
	line-height: 1.4;
}
#scrap .block7 .urban-mining-list-item .wrap-detail{
	margin-top: 15px;
	background-color: #F4F4F4;
	padding: 20px;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .detail-box:not(:last-child){
	margin-bottom: 25px;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .detail-ttl{
	position: relative;
	padding-left: 16px;
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .detail-ttl .icon{
	position: absolute;
	left: 0;
	top: 5px;
	width: 14px;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .detail-ttl .txt{
	color: #467124;
	font-weight: bold;
	font-size: 14px;
	line-height: 1.6;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .box-list{
	font-size: 13px;
	line-height: 1.4;
	text-indent: -1.3em;
	padding-left: 1.3em;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .box-card{
	display: flex;
	justify-content: space-between;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .box-card .card{
	box-sizing: border-box;
	background-color: #fff;
	width: calc((100% - 15px) / 3);
	padding: 15px 5px;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .box-card .txt{
	font-size: 21px;
}
#scrap .block7 .urban-mining-list-item .wrap-detail .box-card .small{
	font-size: 13px;
	padding-right: 2px;
}

/*-------- block5 sdgs 20211217 upgrade -------*/
#scrap .block5 .action_area {
	margin-top: 8.4vw;
}
#scrap .block5 .action_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 3.6vw;
}
#scrap .block5 .action_list li {
	width: calc(50% - .5px);
	box-sizing: border-box;
	padding: 8.4vw 3.6vw 3.6vw;
	margin-bottom: 1px;
}
#scrap .block5 .action_list li.action1 {
	background-color: #E4011E;
}
#scrap .block5 .action_list li.action3 {
	background-color: #1B973A;
}
#scrap .block5 .action_list li.action4 {
	background-color: #C50E28;
}
#scrap .block5 .action_list li.action5 {
	background-color: #E83418;
}
#scrap .block5 .action_list li.action7 {
	background-color: #FABD00;
}
#scrap .block5 .action_list li.action8 {
	background-color: #970A31;
}
#scrap .block5 .action_list li.action9 {
	background-color: #EC6A06;
}
#scrap .block5 .action_list li .ttl {
	height: 15vw;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: .01em;
	color: #FFF;
	text-align: center;
}
#scrap .block5 .action_list li .ttl .sp-none {
	display: none !important;
}
#scrap .block5 .action_list li .icon {
	width: 31.7vw;
	margin: 5.4vw auto 4.8vw;
}
#scrap .block5 .link-to-page{
	margin-top: 30px;
}
#scrap .block5 .link-to-page a{
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 58px;
	border: 1px solid #4D7952;
	background-color: #fff;
	color: #305717;
	font-size: 18px;
}

/* ===============================
 metal 特殊金属事業
===============================*/
#metal .cmn-main{
	background-image:url(../img/metal/main_bg.jpg);
}
#metal .block{
	padding: 35px 0;
}

/*-------- block1 materials -------*/

#metal .material_list{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

#metal .material_list li{
	width: 48%;
}
	#metal .material_list .txtbox{
	    font-size: 14px;
	    line-height: 1.4;
	    margin: 8px 0 24px;
	    text-align: center;
	    letter-spacing: 0.1em;
	}

/* ===============================
 eco エコロジー事業
===============================*/
#eco .cmn-main{
	background-image:url(../img/eco/main_bg.jpg);
}

/* ===============================
 eco-detail1 健康飼料事業
===============================*/
#eco_d1 .cmn-main{
	background-image: url(../img/eco/detail1/main_bg.jpg);
}
#eco_d1 .cmn-main .txtbox .txt1{
	max-width: 510px;
}
#eco_d1 .cmn-txt1{
	margin-bottom: 24px;
}

/*-------- block2 -------*/
#eco_d1 .block2{
	background: url(../img/eco/detail1/advantage_bg.jpg) no-repeat;
	background-size: cover;
	color:#000;
}
#eco_d1 .block2 .inner:first-child{
	margin-bottom: 35px;
	padding-bottom: 35px;
	border-bottom: 1px solid #999999;
}
#eco_d1 .block2 .txt_contact{
	margin-top: 12px;
	text-align: center;
	font-size: 13px;
	letter-spacing: 0.1em;
}
#eco_d1 .advantage_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: flex-start;
	align-items: flex-start;
}
	#eco_d1 .advantage_list li{
	    width: 33.3%;
	    margin-bottom: 20px;
	}
	#eco_d1 .advantage_list .imgbox{
	    text-align: center;
	}
	#eco_d1 .advantage_list .imgbox img{
	    width: 70%;
	    max-width: 131px;
	}
	#eco_d1 .advantage_list .txtbox{
	    font-size: 11px;
	    line-height: 1.4;
	    text-align: center;
	    margin-top: 8px;
	}

	#eco_d1 .graphbox{
	    position: relative;
	    padding-bottom: 25vw;
	}
	#eco_d1 .graph{
	    margin-top: 28px;
	}
	#eco_d1 .graphbox .txt1{
	    text-align: center;
	}
	    #eco_d1 .graphbox .txt1 img{
	        width: 50%;
	    }
	#eco_d1 .graphbox .txt2{
	    width: 100%;
	    text-align: center;
	    position: absolute;
	    bottom: 0;
	}
	    #eco_d1 .graphbox .txt2 img{
	        width: 80%;
	    }
@media screen and (max-width:400px){
#eco_d1 .advantage_list li{
	width: 50%;
}
}
@media screen and (min-width:415px){
	#eco_d1 .advantage_list li{
	    width: 25%;
	}
	#eco_d1 .graphbox{
	    zoom:1;
	    padding-bottom: 0;
	    max-width: 940px;
	    margin: 48px auto 0;
	}
	    #eco_d1 .graphbox:after{
	        display: block;
	        content: "";
	        clear: both;
	    }
	#eco_d1 .graphbox .txtbox{
	    width: 35%;
	    max-width: 304px;
	    float: left;
	}
	#eco_d1 .graphbox .txt2{
	    position: static;
	}
	#eco_d1 .graphbox .graph{
	    width: 60%;
	    max-width: 575px;
	    float: right;
	}
	#eco_d1 .graphbox .txt1,
	#eco_d1 .graphbox .txt2{
	    text-align: left;
	}
	#eco_d1 .graphbox .txt1{
	    margin-bottom: 40px;
	}
	#eco_d1 .graphbox .txt1 img,
	#eco_d1 .graphbox .txt2 img{
	    width: 100%;
	}
	#eco_d1 .graphbox .txt1 img{
	    width: 90.5%;
	}


}

/*-------- block2 -------*/
#eco_d1 .block3{
	background: url(../img/eco/detail1/feed_bg.jpg) no-repeat;
	background-size: cover;
}

#eco_d1 .feed_list .txtbox{
	font-size: 13px;
	text-align: center;
	letter-spacing: 0.1em;
	margin: 16px 0 24px;
}

/* ===============================
  eco_d2 環境機器事業
===============================*/
#eco_d2 .cmn-main{
	background-image: url(../img/eco/detail2/main_bg.jpg);
}
#eco_d2 .cmn-txt1{
	margin-bottom: 28px;
}
/*-------- block1 domain -------*/
#eco_d2 .block1{
	background-color: #F8F8F8;
	padding-bottom: 15px;
}
	#eco_d2 .block1 .cmn-ttl1_sub{
	    margin-bottom: 24px;
	}
#eco_d2 .domain_list{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

#eco_d2 .break{

	display: inline-block;

}


#eco_d2 .domain_list li{
	width: 45%;
}
	#eco_d2 .domain_list .txtbox{
	    font-size: 14px;
	    line-height: 1.4;
	    margin: 8px 0 24px;
	    text-align: center;
	    letter-spacing: 0.1em;
	}
	#eco_d2 .domain_list .txtbox span{
	    display: inline-block;
	}
/*-------- block2 -------*/
#eco_d2 .block2{
	padding-bottom: 0;
}

/*-------- block3 pentair -------*/
#eco_d2 .block3{
	background: url(../img/eco/detail2/products_bg1.jpg) no-repeat;
	background-size: cover;
	padding-bottom: 15px;
	color:#fff;
}
#eco_d2 .pentair_list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	letter-spacing: 0.1em;
}
#eco_d2 .pentair_list.l-center{
	justify-content: center;
}
	#eco_d2 .pentair_list li{
	    width: 47.5%;
	    max-width: 450px;
	}
	#eco_d2 .pentair_list .ptxt1{
	    margin: 12px 0 8px;
	    text-align: center;
	    font-size: 15px;
	    line-height: 1.2;
	}
	#eco_d2 .pentair_list .ptxt1 span{
	    display: inline-block;
	}
	#eco_d2 .pentair_list .ptxt2{
	    margin: 0 0 24px;
	    text-align: center;
	    font-size: 13px;
	    line-height: 1.4;
	}

/*-------- block4 -------*/
#eco_d2 .block4{
	background: url(../img/eco/detail2/products_bg2.jpg) no-repeat fixed;
	background-size: cover;
	letter-spacing: 0.1em;
}

#eco_d2 .block4 .container{
	background-color:#fff;
	box-shadow: 0 0 10px 4px rgba(6, 101, 142,.65);
	padding: 30px 5% 5%;
}
#eco_d2 .block4 .container:not(:last-child){
	margin-bottom: 20px;
}

#eco_d2 .block4 .ttl1_sub{
	font-size: 15px;
	margin-bottom: 12px;
	font-weight: bold;
}


#eco_d2 .block4 .ttl1{
	display: table;
	width: 100%;
	margin-bottom: 18px;
}
	#eco_d2 .block4 .ttl1 p{
	    display: table-cell;
	}
	#eco_d2 .block4 .ttl1 p span{
	    word-break: keep-all;
	height: 1em;
	}
	#eco_d2 .block4 .ttl1 .txt{
	    padding: 0 20px;
	    font-size: 21px;
	    word-break:keep-all;
	}
	#eco_d2 .deco{
	    position: relative;
	    width: 40%;
	}
		#eco_d2 .deco_en{
	    position: relative;
	    width: 22%;
		}
	#eco_d2 .deco:after{
	    display: block;
	    content:"";
	    position: absolute;
	    height: 2px;
	    background-color: #0CB0BE;
	    width: 100%;
	    top: calc(50% - 2px);
	    left: 0;
	}
		#eco_d2 .deco_en:after{
	    display: block;
	    content:"";
	    position: absolute;
	    height: 2px;
	    background-color: #0CB0BE;
	    width: 100%;
	    top: calc(50% - 2px);
	    left: 0;
	}

#eco_d2 .block4 .txt1{
	font-size: 12px;
	line-height: 1.6;
	margin-bottom: 24px;
}

#eco_d2 .block4 .list1 li{
	padding-left: 1.6em;
	position: relative;
	font-size: 14px;
	line-height: 1.4;
}
	#eco_d2 .block4 .list1 li:not(:last-child){
	    margin-bottom: 12px;
	}
#eco_d2 .block4 .list1 li:before{
	width: 0.8em;
	height: 0.8em;
	top: 0.2em;
	left: 0;
	background-color: #0CB0BE;
	position: absolute;
	display: block;
	content: "";
}

#eco_d2 .block4 .list1 li span{
	display: inline-block;
	font-size: 11px;
	margin-left: 1em;
}

#eco_d2 .block4 .imgbox1{
	text-align: center;
	margin: 12px 0 24px;
}
	#eco_d2 .block4 .imgbox1 img{
	    width: 50%;
	    max-width: 266px;
	}

#eco_d2 .block4 .graybox{
	background-color: #F8F8F8;
	padding: 5%;
}

#eco_d2 .block4 .txt2{
	font-weight: bold;
	font-size: 15px;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 12px;
}
#eco_d2 .block4 .txt2 span{
	display: inline-block;
}

#eco_d2 .block4 .imgbox2{
	margin-bottom: 10px;
}

#eco_d2 .block4 .imgbox2_en{
	margin-bottom: 10px;
}

#eco_d2 .block4 .imgbox2,
#eco_d2 .block4 .imgbox3{
	text-align: center;
}

#eco_d2 .block4 .imgbox2_en,
#eco_d2 .block4 .imgbox3{
	text-align: center;
}

#eco_d2 .block4 .imgbox2 img,
#eco_d2 .block4 .imgbox3 img{
	max-width: 410px;
}

#eco_d2 .block4 .imgbox2_en img,
#eco_d2 .block4 .imgbox3 img{
	max-width: 636px;
}

#eco_d2 .block4 .imgbox4{
	margin: 18px 0 0;
	text-align: center;
}
	#eco_d2 .block4 .imgbox4 img{
	    width: 50%;
	    max-width: 230px;
	}

/* ===============================
 support 支援活動
===============================*/
#support .cmn-main{
	background-image:url(../img/support/main_bg.jpg);
}

/*-------- block1 -------*/
#support .block1{
	background: url(../img/support/block1_bg.jpg) no-repeat;
	background-size: cover;
}
#support .block1 .ttl1{
	font-size: 21px;
	line-height: 1.4;
	margin-bottom: 24px;
}

#support .block1 .txt1{
	font-size: 13px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	max-width: 520px;
	margin: 0 auto 24px;
}
#support .block1 .link1{
	font-size: 15px;
	text-align: center;
	line-height: 1.4;
	margin-bottom: 16px;
}
#support .block1 .info1{
	font-size: 11px;
	text-align: center;
}

/*-------- block2 -------*/
#support .block2 .cmn-ttl1_sub{
	margin-bottom: 24px;
}
#support .contribution_list{
	max-width: 520px;
	margin: 0 auto;
}
#support .contribution_list li:not(:last-child){
	margin-bottom: 24px;
	padding-bottom: 24px;
	border-bottom: 1px solid #ccc;
}
#support .contribution_list .imgbox{
	margin-bottom: 16px;
	text-align: center;
}
	#support .contribution_list .imgbox img{
	    max-width: 340px;
	}
#support .contribution_list .subttl{
	font-size: 15px;
	margin-bottom: 12px;
	font-weight: normal;
	text-align: center;
}
	#support .contribution_list .subttl .icon_deco{
	    display: inline-block;
	}
	#support .contribution_list .subttl span{
	    margin-right: 0.5em;
	}
#support .contribution_list .txtbox{
	font-size: 13px;
	line-height: 1.4;
	letter-spacing: 0.1em;
}

/* ===============================
 recruit 採用情報
===============================*/
#recruit .cmn-main{
	background-image:url(../img/recruit/main_bg.jpg);
}

/*-------- block1 -------*/
#recruit .block1{
	background: url(../img/recruit/block1_bg.jpg) no-repeat;
	background-size: cover;
	color:#fff;
}
#recruit .block1 span{
	display: inline-block;
}
#recruit .block1 .ttl1{
	font-size: 24px;
	margin-bottom: 16px;
	letter-spacing: 0.1em;
	line-height: 1.2;
	text-align: center;
}
#recruit .block1 .txt1{
	font-size: 15px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	text-align: center;
}

/*-------- block2 -------*/
#recruit .block2{
	color: #333333;
}
#recruit .message_list li:not(:last-child){
	margin-bottom: 32px;
	padding-bottom: 32px;
	border-bottom: 1px solid #ccc;
}
#recruit .message_list .subttl{
	font-size: 16px;
	margin: 0 auto 14px;
	text-align: left;
	max-width: 510px;
}
	#recruit .message_list .subttl .icon_deco{
	    display: inline-block;
	}
#recruit .message_list .txt1,
#recruit .message_list .name{
	max-width:510px;
	margin: 0 auto;
}
#recruit .message_list .txt1{
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}
#recruit .message_list .name{
	margin-top: 4vw;
	text-align: right;
}
#recruit .message_list .name img{
	width: auto;
	height: 3.62vw;
	max-height: 17px;
}
#recruit .message_list .txtbox{
	margin-bottom: 16px;
}
#recruit .message_list .imgbox{
	text-align: center;
}
	#recruit .message_list .imgbox img{
	    max-width: 476px;
	}

/*-------- block3 -------*/
#recruit .block3{

	background: url(../img/recruit/block3_bg1.jpg) no-repeat;

	background-size: cover;

}

#recruit .block3 .cmn-ttl1_sub{

	margin-bottom: 24px;

}

#recruit .block3 .check_list dt{

}


#recruit .block3 .subttl{

	font-size: 16px;

	margin-bottom: 14px;

	text-align: center;

}
@media screen and (max-width:540px){

	#recruit .block3 .subttl{

		text-align: left;

	}

}
	#recruit .block3 .subttl .icon_deco{

		display: inline-block;

	}

#recruit .block3 .txt1{

	font-size: 13px;

	line-height: 1.6;

	letter-spacing: 0.1em;

	/* max-width:510px; */

	margin: 0 auto;

}

#recruit .block3 .subtxt{

	margin-bottom: 15px;

}

#recruit .support_list li{

	background-color: #fff;

	box-shadow: 0 0 5px #BDD2C5;

	padding: 20px;

}

	#recruit .block3 .support_list li:not(:last-child){

		margin-bottom: 20px;

	}

	#recruit .block3 .imgbox{

		text-align: center;

	}

	#recruit .block3 .imgbox img{

		max-width: 658px;

	}

#recruit .block3 .check_list{

	background-color: #F4F4F4;

	padding: 17px 20px 20px;

}

#recruit .block3 .check_list dt{

	background: url(../img/common/icon_check.png) no-repeat left 0.2em;

	background-size: auto 1em;

	padding-left: 1.7em;

	font-size: 14.5px;

	font-weight: bold;

	color: #467124;

	margin-bottom: 0.3em;

}

#recruit .block3 .check_list dd:not(:last-child){

	margin-bottom: 17px;

	padding-bottom: 20px;

	border-bottom: 1px dashed #B4B4B4;

}

#recruit .block3 .check_list .note_box{

	background-color: #FBFBFB;

	color: #666;

	line-height: 1.5;

	font-size: 12px;

	padding: 0.9em;

	margin-top: 0.7em;

}
/*

#recruit .block3 .txtbox{
	margin-bottom: 16px;
}
#recruit .block3 .imgbox{
	text-align: center;
}
	#recruit .block3 .imgbox img{
	    max-width: 476px;
	} */

/*-------- block4 flow -------*/
#recruit .block4{
	padding-bottom: 50px;
}
#recruit .block4 .cmn-ttl1_sub{
	margin-bottom: 24px;
}
#recruit .flow_list{
	max-width: 510px;
	margin: 0 auto;
}
#recruit .flow_list li{
	padding: 40px 20px 20px;
	background-color: #F8F8F8;
	position: relative;
}
	#recruit .flow_list li:before{
	    position: absolute;
	    width: 100%;
	    height: 18px;
	    top: 0;
	    left: 0;
	    content:"";
	    display: block;
	    background: url(../img/recruit/arrow-btm-white.png) no-repeat;
	    background-size: 100% 100%;
	}
	#recruit .flow_list .row1:before{
	    background: none;
	}
	#recruit .flow_list .row2:before,
	#recruit .flow_list .row4:before{
	    background-image: url(../img/recruit/arrow-btm-blue.png);
	}
	#recruit .flow_list .row1,
	#recruit .flow_list .row3{
	    background-color: #E5EEF3;
	}
	#recruit .flow_list .row4:after{
	    position: absolute;
	    width: 100%;
	    height: 18px;
	    bottom: -18px;
	    left: 0;
	    content:"";
	    display: block;
	    background: url(../img/recruit/arrow-btm-white.png) no-repeat;
	    background-size: 100% 100%;
	}
	#recruit .flow_list .num{
	    position: absolute;
	    top: -8px;
	    left: 50%;
	    margin-left: -18px;
	    font-size: 15px;
	    border: 2px solid #F8F8F8;
	    padding: 12px 15px;
	    border-radius: 24px;
	    background-color: #fff;
	    display: inline-block;
	    box-sizing: border-box;
	    font-weight: bold;
	}
	#recruit .flow_list .row1 .num,
	#recruit .flow_list .row3 .num{
	    border-color: #E5EEF3;
	}
	#recruit .flow_list .subttl{
	    font-size: 15px;
	    font-weight: bold;
	    margin-bottom: 8px;
	    text-align: center;
	}
	#recruit .flow_list .subttl .note{
	    font-size: 12px;
	}
	#recruit .flow_list .txt1{
	    font-size: 13px;
	    line-height: 1.4;
	    text-align: center;
	}

/*-------- block5 info -------*/
#recruit .block5{
	background: url(../img/recruit/block5_bg.jpg) no-repeat;
	background-size: cover;
}
#recruit .block5 .cmn-ttl1,
#recruit .block5 .cmn-ttl1_sub{
	color:#000;
}
#recruit .block5 .cmn-ttl1_sub{
	margin-bottom: 24px;
}
#recruit .tab_btns{
	display: flex;
	justify-content: space-between;
}
#recruit .tab_btns{
	border-bottom: 4px solid #0CB0BE;
}
	#recruit .tab_btns li{
	    width: 49%;
	    font-size: 16px;
	    color: #ccc;
	    font-weight: bold;
	    letter-spacing: 0.1em;
	    text-align: center;
	    padding: 12px 0 8px;
	    background-color: #fff;
	    cursor: pointer;
	}
	#recruit .tab_btns li.on{
	    background-color: #0CB0BE;
	    color:#fff;
	}

#recruit .tab_area{
	margin-top: 1px;
	padding: 10px 15px;
	background-color: #fff;
}
#recruit .info_tbl{
	width: 100%;
}
	#recruit .info_tbl th{
	    border: 5px solid #fff;
	    border-left: none;
	    padding: 10px 5px;
	    font-size: 13px;
	    font-weight: bold;
	    color: #000;
	    line-height: 1.2;
	    background-color: #E5EEF3;
	    width: 25%;
	}
	#recruit .info_tbl td{
	    font-size: 13px;
	    line-height: 1.4;
	    padding: 10px 5px;
	    vertical-align: middle;
	}
	#recruit .info_tbl tr:not(:last-child) td{
	    border-bottom:1px solid #ccc;
	}
#recruit .infobox{
	padding: 15px;
	background-color: #fff;
	margin-top: 15px;
	letter-spacing: 0.1em;
}
#recruit .info_subttl{
	font-size: 15px;
	margin-bottom: 8px;
	font-weight: bold;
}
#recruit .info_list{
	font-size: 13px;
	line-height: 1.6;
}

#recruit .contact_bnr{
	background: url(../img/recruit/contact_bg.jpg) no-repeat;
	background-size: cover;
}
#recruit .contact_bnr a{
	display: block;
	border: 1.5px solid #fff;
	padding: 15px;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	line-height: 1.4;
	max-width: 510px;
	margin: 0 auto;
	box-sizing: border-box;
	text-decoration: none;
	transition:.3s;
}
#recruit .contact_bnr a:hover{
	opacity: .7;
}
#recruit .contact_bnr a span{
	display: inline-block;
}




#recruit .block6{
	background: url(../img/recruit/block5_bg.jpg) no-repeat;
	background-size: cover;
}
#recruit .block6 .cmn-ttl1_sub{
	margin-bottom: 24px;
}
/*-------- block6 happy -------*/

#recruit .block6 h2{

	margin-bottom:20px;

}
#recruit .block6 .subttl{
	font-size: 16px;
	margin:15px 5px 8px;
	text-align: left;
	text-indent:-1.7em;
	padding-left:2.1em;
}


	#recruit .block6 .subttl .icon_deco{
	    display: inline-block;
	}
#recruit .block6 .txt1{
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.1em;
	margin: 5px;
}

#recruit .block6 .white_box{
	padding:10px;

	background:#fff;

	box-shadow: 0 0 5px #ccc;

	margin-bottom:20px;

}

/* ===============================
 company 会社概要
===============================*/
#company .cmn-main{
	background-image: url(../img/company/main_bg.jpg);
}
#company .imgbox{
	text-align: center;
}
	#company .imgbox img{
	    max-width: 387px;
	}

/*-------- block1 -------*/
#company .block1{
	letter-spacing: 0.1em;
}
#company .block1 .ttl1{
	font-size: 18px;
	text-align: center;
	margin-bottom: 24px;
}
#company .block1 .txt1{
	font-size: 13px;
	line-height: 1.6;
	max-width: 540px;
	margin: 0 auto 24px;
}
@media screen and (min-width:470px) and (max-width:768px){
	#company .block1 .txt1{
	    text-align: center;
	}
}


/*-------- block2 -------*/
#company .block2{
	background: url(../img/company/block2_bg.jpg) no-repeat;
	background-size: cover;
	color:#000;
	padding-bottom: 50px;
}
#company .block2 .cmn-ttl1_sub{
	margin-bottom: 32px;
}
#company .block2 .catch2,
#company .block2 .catch{
	margin-bottom: 20px;
}
#company .block2 .catch2{
	text-align: center;
}
#company .block2 .catch2,
#company .block2 .txt1{
	font-size: 14px;
	letter-spacing: 0.1em;
	line-height: 1.4;
}


@media screen and (min-width:600px){
#company .block2 .txt1{
	text-align: center;
}
}

/*-------- block3 -------*/
#company .block3 .cmn-ttl1_sub{
	margin-bottom: 24px;
}
#company .block3 .txtbox{
	font-size: 13px;
	line-height: 1.6;
	max-width: 540px;
	margin: 0 auto;
}
#company .block3 .txtbox p{
	margin-bottom: 16px;
}
#company .block3 .name{
	font-size: 15px;
	line-height: 1.6;
	text-align: center;
	margin-top: 12px;
}
#company .block3 .imgbox{
	margin-top: 24px;
}

/*-------- block4 -------*/
#company .block4{
	background: url(../img/company/block4_bg.jpg) no-repeat;
	background-size: cover;
	color:#fff;
}
#company .block4 .cmn-ttl1_sub{
	margin-bottom: 24px;
}

#company .info_list{
	margin: 0 auto;
	max-width: 540px;
	box-shadow: 0 0 10px 5px #137780;
}
	#company .info_list .type{
	    display: table;
	    width: 100%;
	    height: 100%;
	    position: relative;
	}
	#company .info_list a{
	    text-decoration: none;
	    height: 150px;
	    display: table-cell;
	    width: 100%;
	    vertical-align: middle;
	    text-align: center;
	    position: relative;
	}
	#company .info_list .type a:before{
	    display: block;
	    content: "";
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    background: url(../img/company/block4_img1.jpg) no-repeat;
	    background-size:cover;
	    top: 0;
	    left: 0;
	}
	#company .info_list .type.type1 a:before{
	    background-image: url(../img/company/block4_img1.jpg);
	}
	#company .info_list .type.type2 a:before{
	    background-image: url(../img/company/block4_img2.jpg);
	}
	#company .info_list .type.type3 a:before{
	    background-image: url(../img/company/block4_img3.jpg);
	}
	#company .info_list .btnbox{
	    position: relative;
	}
	#company .info_list .ttl{
	    font-size: 18px;
	    color: #fff;
	    letter-spacing: 0.1em;
	    text-shadow: 0 0 10px rgba(19, 34, 28, 0.6),
	        0 0 10px rgba(19, 34, 28, .6),
	        0 0 10px rgba(19, 34, 28, .6),
	        0 0 10px rgba(19, 34, 28, .6);
	}
	#company .info_list .ttl span{
	    display: inline-block;
	}
	#company .info_list .icon{
	    text-align: center;
	    margin-bottom: 12px;
	}
	#company .info_list .icon img{
	    max-width: 40px;
	}

	#company .block4 .btn_more{
	    line-height: 25px;
	    width: 130px;
	    margin-top: 12px;
	}


/*-------- block7 20230427 add -------*/
#company .block7{
	background-color: #fff;
	padding-top: 35px;
}
#company .block7 .iso-block{
	background-color: #fff;
	box-shadow: 0 0 5px rgba(189, 210, 197, .4);
	padding: 20px;
}
#company .block7 .iso-block .block-ttl{
	font-size: 18px;
	margin-bottom: 15px;
}
#company .block7 .iso-block .box-lead{
	font-size: 13px;
	line-height: 1.4;
}
#company .block7 .iso-list{
	margin-top: 15px;
}
#company .block7 .iso-list-box{
	background-color: #F4F4F4;
	padding: 20px;
}
#company .block7 .iso-list-box:not(:last-child){
	margin-bottom: 20px;
}
#company .block7 .iso-list-box .box-ttl{
	font-size: 14px;
	color: #467124;
	font-weight: bold;
	margin-bottom: 15px;
}
#company .block7 .iso-list-box .wrap-txt{
	font-size: 13px;
	line-height: 1.4;
}
#company .block7 .iso-list-box .wrap-txt .pdf{
	margin-top: 15px;
}
#company .block7 .iso-list-box .wrap-txt .pdf a{
	display: inline-block;
	position: relative;
	text-decoration: underline;
	padding-left: 1.53em;
}
#company .block7 .iso-list-box .wrap-txt .pdf a:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 1.07em;
	height: 1.46em;
	top: -0.2em;
	left: 0;
	background: url(../img/company/icon-pdf.png) no-repeat center center;
	background-size: contain;
}
#company .block7 .iso-list-box table{
	width: 100%;
}
#company .block7 .iso-list-box table th,
#company .block7 .iso-list-box table td{
	box-sizing: border-box;
	vertical-align: middle;
	background-color: #fff;
	font-size: 13px;
	line-height: 1.4;
	padding: 15px 5px 15px 10px;
}
#company .block7 .iso-list-box table tr:not(:last-child) th,
#company .block7 .iso-list-box table tr:not(:last-child) td{
	border-bottom: 2px solid #F4F4F4;
}
#company .block7 .iso-list-box table th:not(:last-child),
#company .block7 .iso-list-box table td:not(:last-child){
	border-right: 1px solid #F4F4F4;
}
#company .block7 .iso-list-box table th{
	width: 32%;
}
#company .block7 .iso-list-box table td{
	width: 68%;
}

/*-------- block5 -------*/
#company .block5{

	background: url(../img/company/map_bg.jpg) no-repeat;

	background-size: cover;

	color:#000;

	border-bottom:1px solid #D4D4D4;

	padding: 35px 0 20px;

}

#company .cmn-width.l-map{

	max-width: 1215px;

}

#company .block5 .cmn-txt1{

	margin-bottom: 20px;

}

#company .map_wrap{

	background: url(../img/company/world_map.png?update=20200624) no-repeat;

	background-size: contain;

	max-height: 586px;

	height: 40.5vw;

	position: relative;

}

#company .map_wrap_en{

	background: url(../img/en/world_map_en.png?update=20200624) no-repeat;

	background-size: contain;

	max-height: 586px;

	height: 40.5vw;

	position: relative;

}

#company .map_wrap .btn_japan{

	max-width: 198px;

	width: 13.7vw;

	height: 4.1vw;

	max-height: 61px;

	background: url(../img/company/map_japan.png) no-repeat;

	background-size: cover;

	position: absolute;

	top: 17.1vw;

	left: 38.1vw;

	cursor: pointer;

}

#company .map_wrap_en .btn_japan_en{

	max-width: 198px;

	width: 12.7vw;

	height: 4.1vw;

	max-height: 61px;

	background: url(../img/en/map_japan_en.png) no-repeat;

	background-size: cover;

	position: absolute;

	top: 17.1vw;

	left: 38.1vw;

	cursor: pointer;

}

#company .map_wrap .btn_japan.on{

	background-image: url(../img/company/map_japan-on.png);

}

#company .map_wrap_en .btn_japan_en.on{

	background-image: url(../img/en/map_japan_en-on.png);

}

#company .map_wrap .btn_japan .btn_beacon{

	background: url(../img/company/btn_beacon.png) no-repeat;

	background-size: contain;

	max-width: 57px;

	max-height: 57px;

	position: absolute;

	top: -1.3vw;

	width: 4.2vw;

	height: 4.2vw;

	left: -3.9vw;

}

#company .map_wrap_en .btn_japan_en .btn_beacon_en{

	background: url(../img/en/btn_beacon_en.png) no-repeat;

	background-size: contain;

	max-width: 57px;

	max-height: 57px;

	position: absolute;

	top: -1.3vw;

	width: 4.2vw;

	height: 4.2vw;

	left: -3.9vw;

}

#company .map_wrap .btn_japan.on .btn_beacon{

	opacity: .7;

}

#company .map_wrap_en .btn_japan_en.on .btn_beacon_en{

	opacity: .7;

}

#company #map_popup{

	display: none;

	position: absolute;

	z-index: 10;

	left: 0;

	right: 0;

	margin: 0 auto;

}

#company .map_japan{

	padding: 20px;

	background-color: rgba(0,0,0,.70);

	color: #fff;

	font-size: 13px;

	line-height: 1.4;

	width: 100%;

	box-sizing: border-box;

}
#company .map_japan .name{

	font-size: 17px;

}

#company .map_japan .address{

	margin: 5px 0 10px;

}

#company .map_japan .btn_close{

	width: 1em;

	height: 1em;

	background: url(../img/common/icon_close2.png) no-repeat;

	background-size: cover;

	position: absolute;

	right: 20px;

	top: 20px;

	cursor: pointer;

}
/* @-webkit-keyframes waveWater {

	from {

		-webkit-transform: scale(0);

		        transform: scale(0);

	}

	to {

		-webkit-transform: scale(1);

		        transform: scale(1);

	}

}

@keyframes waveWater {

	from {

		-webkit-transform: scale(0);

		        transform: scale(0);

	}

	to {

		-webkit-transform: scale(1);

		        transform: scale(1);

	}

}
#company .map_wrap .btn_japan .btn_beacon {

	animation: waveWater 1.5s infinite;

} */
/* #company .cmn-main .txtbox{
	padding-top: 25vw;
}
@media screen and (max-width:635px){
	#company .cmn-main .txtbox{
	    padding-top: 154px;
	}
}
#company .block5 .cmn-txt1{
	margin-bottom: 24px;
}
#company .overview_list{
	color:#000;
	max-width: 540px;
	margin: 0 auto;
}
#company .overview_list li{
	border: 1px solid #ccc;
	padding: 20px 10px 10px;
	box-sizing: border-box;



	background:#FFF;
}
	#company .overview_list li:not(:last-child){
	    margin-bottom: 15px;
	}
#company .overview_list .name{
	font-size: 18px;
	text-align: center;
}
#company .overview_list .txt{
	font-size: 13px;
	line-height: 1.4;
	text-align: center;
	margin: 12px 0;
} */

/*-------- block6 -------*/
#company .block6{
	background: #F8F8F8;
}

#company .outline_tbl{
	width: 100%;
	box-sizing: border-box;
}
#company .outline_tbl th,
#company .outline_tbl td{
	display: block;
	box-sizing: border-box;
}
	#company .outline_tbl th{
		padding: 10px;
		font-size: 13px;
		font-weight: bold;
		color: #fff;
		line-height: 1.2;
		background-color: #4D7952;
		width: 100%;
		position: relative;
	}
	#company .outline_tbl td{
		font-size: 13px;
		line-height: 1.4;
		padding: 10px 0;
		vertical-align: middle;
	}
	#company .outline_tbl tr:not(:last-child) td{
		border-bottom:1px solid #ccc;
	}
#popup1 .box01{

	padding-bottom:30px;

	border-bottom:solid 1px #CCC;

	margin-bottom:20px;

}

#popup1 .box01.last{

	padding-bottom:30px;

	border-bottom:none;

	margin-bottom:0;

}

#popup1 .box01 p{



}

#popup1 .box01 .imgbox{

	margin:10px 0 20px;


}

#popup3 .movie_wrap{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
#popup3 .movie_wrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ===============================
 privacy プライバシーポリシー
===============================*/
#privacy .inner{
	max-width: 540px;
	margin: 0 auto;
	letter-spacing: 0.1em;
	line-height: 1.4;
}
#privacy .txt1{
	font-size: 13px;
	margin-bottom: 24px;
}
#privacy .policy_list dt{
	font-size: 15px;
	font-weight: bold;
	color: #fff;
	padding: 10px;
	background-color: #4D7952;
	padding-left: 2.8em;
	text-indent: -1.8em;
	margin-bottom: 8px;
}
#privacy .policy_list dd{
	font-size: 13px;
	margin-bottom: 24px;
}

/* ===============================
 contact 問い合わせ
===============================*/
#contact .contents{
	background-color: #f8f8f8;
}
#contact .inner{
	max-width: 540px;
	margin: 0 auto;
	letter-spacing: 0.1em;
	line-height: 1.4;
}
#contact .ctxt{
	font-size: 13px;
	margin-bottom: 24px;
}
#contact .ctxt p{
	margin-top: 16px;
}

/* 2020.07.01 追加 */
#contact .faq_box{
	margin-top: 40px;
	margin-bottom: 40px;
}
#contact .faq_box .box_ttl{
	margin-bottom: -15px;
	text-align: center;
	position: relative;
	font-size: 23px;
	color: #4D7952;
}
#contact .faq_box .box_ttl:before,
#contact .faq_box .box_ttl:after{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	background-color: #4D7952;
	height: 1px;
	width: 35%;
	top: 50%;
}
#contact .faq_box .box_ttl:before{
	left: 0;
}
#contact .faq_box .box_ttl:after{
	right: 0;
}
#contact .faq_box .innerbox{
	border: solid 1px #4D7952;
	border-top: none;
	padding: 30px 5% 20px;
}
#contact .faq_box .lead_txt{
	font-size: 13px;
}
#contact .faq_box .faq_list{
	display: none;
	padding-top: 40px;
}
#contact .faq_box .faq_item:not(:last-child){
	margin-bottom: 20px;
}
#contact .faq_box .faq_item .item_ttl{
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 10px;
}
#contact .faq_box .faq_item .item_txt{
	font-size: 13px;
	line-height: 1.4;
	text-indent: -1em;
	padding-left: 1em;
}
#contact .faq_box .open_btn{
	margin: 20px auto 0 auto;
	width: 60px;
	height: 44px;
	background: url(../img/contact/open_btn-more.png) no-repeat center center;
	background-size: contain;
}
#contact .faq_box .open_btn.is--open{
	background-image: url(../img/contact/open_btn-close.png);
}

/* 2021.03.03 追加 */
#contact .contact_box .contact_info_list li{
	display: flex;
}
#contact .contact_box .contact_info_list li:not(:last-child){
	margin-bottom: 0.5em;
}
#contact .contact_box .contact_info_list .ttl{
	width: 3.75em;
}
#contact .contact_box .contact_info_list .txt{
	flex:1;
}
#contact .contact_box a{
	text-decoration: underline;
}

/* ===============================
 eco_d3 グローバル人材交流課
===============================*/
#eco_d3 .cmn-main{
	background-image: url(../img/eco/detail3/main_bg.jpg);
}
#eco_d3 .cmn-main .page_ttl{
	margin-bottom: 30px;
}

#eco_d3 .block1 .cmn-ttl1_sub{
	margin-bottom: 25px;
}
#eco_d3 .block1 .cmn-width:after{
	content:'';
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 24px 28.5px 0 28.5px;
	border-color: #FFF transparent transparent transparent;
	bottom: -56px;
	left: 50%;
	transform:translateX(-50%);
	z-index: 2;
}
#eco_d3 .block1 .service_list li:not(:last-child){
	margin-bottom: 20px;
}
#eco_d3 .block1 .service_list li .imgbox{
	display: none;
}
#eco_d3 .block1 .service_list li .txtbox{
	font-size: 16px;
	text-align: center;
	margin-top: 10px;
}
#eco_d3 .block1 .service_list li .txtbox img{
	width: 25px;
	vertical-align: middle;
	padding-right: 5px;
}

#eco_d3 .block2{
	background: url(../img/eco/detail3/detail_bg.jpg) no-repeat fixed;
	background-size:cover;
	box-shadow: 0 3px 6px rgba(0,0,0,0.2);
	position: relative;
	z-index: 2;
}
#eco_d3 .block2 .container{
	background-color: #FFF;
	box-shadow:0 0 10px 4px rgba(6, 101, 142,.65);
	padding:30px 5% 5%;
}
#eco_d3 .block2 .detail_list{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin-bottom: 25px;
}
#eco_d3 .block2 .detail_list li{
	width: 46%;
}
#eco_d3 .block2 .detail_list li:not(:nth-last-child(-n+2)){
	margin-bottom: 25px;
}
#eco_d3 .block2 .detail_list li .txtbox{
	text-align: center;
	font-size: 14px;
	margin-top: 10px;
	line-height: 1.2;
}
#eco_d3 .block2 .license_box{
	background-color:#E6F6F5;
	padding:4.4vw;
}
#eco_d3 .block2 .license_box .box_ttl{
	position: relative;
	text-align: center;
	font-size: 16px;
	margin-bottom: 20px;
}
#eco_d3 .block2 .license_box .box_ttl:before,
#eco_d3 .block2 .license_box .box_ttl:after{
	content:'';
	display: block;
	position: absolute;
	background-color: #15959F;
	height: 1px;
	width: calc((100% - 14em) / 2);
	top: 50%;
	transform:translateY(-50%);
}
#eco_d3 .block2 .license_box .box_ttl:before{
	left: 0;
}
#eco_d3 .block2 .license_box .box_ttl:after{
	right: 0;
}
#eco_d3 .block2 .license_box li{
	line-height: 1.4;
	margin-bottom: 15px;
}

#eco_d3 .block3{
	background: url(../img/eco/detail3/form_bg.jpg) no-repeat fixed;
	background-size:cover;
}
#eco_d3 .block3 .head_txt{
	font-weight: bold;
	margin-bottom: 25px;
	line-height: 1.4;
}
#eco_d3 .block3 .head_txt .l_txt{
	font-size: 14px;
	margin-bottom: 15px;
}
#eco_d3 .block3 .jump_box{
	margin-bottom: 25px;
}
#eco_d3 .block3 .jump_box .btn{
	display: flex;
	align-items: center;
	box-sizing:border-box;
	padding:10px;
	color:#FFF;
	font-weight: bold;
	font-size: 16px;
	transition:0.5s all;
}
#eco_d3 .block3 .jump_box .btn:hover{
	text-decoration: none;
	opacity: 0.7;
}
#eco_d3 .block3 .jump_box .btn br{
	/*display: none;*/
}
#eco_d3 .en .block3 .jump_box .txt{
	width:100%;
}
#eco_d3 .block3 .jump_box .btn1{
	background: url(../img/eco/detail3/individual_arrow.png) no-repeat, #14919A;
	background-position:95% center;
	background-size:25px auto;
	margin-bottom: 15px;
}
#eco_d3 .block3 .jump_box .btn2{
	background: url(../img/eco/detail3/corporation_arrow.png) no-repeat, #4D7952;
	background-position:95% center;
	background-size:25px auto;
}
#eco_d3 .block3 .jump_box .btn .label{
	padding:5px 5px 5px 30px;
	box-sizing:border-box;
	margin-right: 10px;
	font-size: 15px;
}
#eco_d3 .block3 .jump_box .btn1 .label{
	background: url(../img/eco/detail3/individual_icon.png) no-repeat 10% center, #FFF;
	background-size:15px auto;
	color:#14919A;
}
#eco_d3 .block3 .jump_box .btn2 .label{
	background: url(../img/eco/detail3/corporation_icon.png) no-repeat 10% center, #FFF;
	background-size:15px auto;
	color:#4D7952;
}
#eco_d3 .block3 .form_box{
	background-color: #fff;
	box-shadow:0 0 10px 4px rgba(200,206,200,0.65);
	box-sizing:border-box;
	padding:20px;
}
#eco_d3 .block3 .form1_box{
	margin-bottom: 25px;
}
#eco_d3 .block3 .form_box .ttl_box{
	margin-bottom: 15px;
	text-align: center;
}
#eco_d3 .block3 .form1_box .ttl_box{
	color:#14919A;
}
#eco_d3 .block3 .form2_box .ttl_box{
	color:#4D7952;
}
#eco_d3 .block3 .form_box .ttl_box .ttl{
	position: relative;
	font-size: 18px;
	margin-bottom: 10px;
	font-weight: bold;
}
#eco_d3 .block3 .form_box .ttl_box .ttl:before,
#eco_d3 .block3 .form_box .ttl_box .ttl:after{
	content:'';
	display: block;
	position: absolute;
	height: 1px;
	width: calc((100% - 12em) / 2);
	top: 50%;
	transform:translateY(-50%);
}
#eco_d3 .block3 .form1_box .ttl_box .ttl:before,
#eco_d3 .block3 .form1_box .ttl_box .ttl:after{
	background-color:#14919A;
}
#eco_d3 .block3 .form2_box .ttl_box .ttl:before,
#eco_d3 .block3 .form2_box .ttl_box .ttl:after{
	background-color:#4D7952;
}
#eco_d3 .block3 .form_box .ttl_box .ttl:before{
	left: 0;
}
#eco_d3 .block3 .form_box .ttl_box .ttl:after{
	right: 0;
}
/* form */
#eco_d3 .block3 .form_box .alert{
	line-height: 1.5;
	font-size: 14px;
}
#eco_d3 .block3 .form_box th{
	font-size: 16px;
	line-height: 1.4;
}
#eco_d3 .block3 .form_box th bt{
	display: none;
}
#eco_d3 .block3 .form1_box .contact_table th{
	background-color: #14919A;
}
#eco_d3 .block3 .form1_box .required:before{
	color:#14919A;
}
#eco_d3 .block3 .form1_box select.cmn-select{
	background:url(../img/common/select_btn2.jpg) no-repeat center right #fff;
}
#eco_d3 .block3 .form1_box input[type="submit"].submit_btn{
	color:#14919A;
	border-color:#14919A;
}
#eco_d3 .block3 .form1_box input[type="submit"].submit_btn:hover{
	background-color: #14919A;
	color:#FFF;
}


/* ===============================
 benefit 20200204 upgrade
===============================*/
/* 共通 */
#benefit .cmn-main{
	background-image: url(../img/benefit/main_bg.jpg);
}
#benefit .cmn-main .page_ttl{
	margin-top: 50px;
}
#benefit .cmn-block{
	background: url(../img/benefit/page_bg.jpg) no-repeat left top;
	background-size: cover;
}
@media screen and (min-width:1100px){
	#benefit .pc-none{
		display: none;
	}
}

/* 冒頭 */
#benefit .cmn-block .head_txt{
	text-align: center;
	margin-bottom: 4.8vw;
}
#benefit .cmn-block .head_txt .ttl1{
	font-size: 2.5rem;
	margin-bottom: 3.6vw;
}
#benefit .cmn-block .head_txt .txt1{
	font-size: 1.2rem;
	line-height: 1.4;
	letter-spacing: .1em;
	padding: 0 5.5vw;
}

@media screen and (min-width:1100px){
	#benefit .cmn-block .head_txt{
		margin-bottom: 30px;
	}
	#benefit .cmn-block .head_txt .ttl1{
		font-size: 38px;
		margin-bottom: 20px;
		letter-spacing: .1em;
	}
	#benefit .cmn-block .head_txt .txt1{
		font-size: 15px;
		line-height: 1.6;
		padding: 0;
	}
}

/* 手当リスト */
#benefit .teate_list{
}
#benefit .teate_list li{
	padding: 2.4vw;
	background-color: #FFF;
	box-shadow: 0 0 3px 1px rgba(189, 210, 197, 0.4);
	margin-bottom: 4.8vw;
}
#benefit .teate_list li .img_box{
	margin-bottom: 3.6vw;
}
#benefit .teate_list li .ttl{
	padding-left: 3vw;
	margin-bottom: 3vw;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: .1em;
	position: relative;
	z-index: 10;
}
#benefit .teate_list li .ttl::before{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6vw 0 0 6vw;
	border-color: transparent transparent transparent #ff9900;
	position: absolute;
	left: 1.2vw;
	bottom: -1.2vw;
	z-index: -1;
}
#benefit .teate_list li .txt_box{
	font-size: 1.2rem;
	letter-spacing: .1em;
	line-height: 1.6;
	padding: 0 5px;
}
#benefit .teate_list li .txt_box p:not(:last-child){
	margin-bottom: 1em;
}

@media screen and (min-width:1100px){
	#benefit .teate_list {
		display: flex;
		flex-wrap: wrap;
	}
	#benefit .teate_list li{
		padding: 10px;
		box-sizing: border-box;
		margin-bottom: 30px;
	}
	#benefit .teate_list1{
		justify-content: space-between;
	}
	#benefit .teate_list1 li{
		width: 535px;
	}
	#benefit .teate_list2 li{
		width: 346px;
	}
	#benefit .teate_list2 li:not(:nth-child(3n)){
		margin-right: calc((100% - 1038px) / 2);
	}
	#benefit .teate_list li .img_box{
		margin-bottom: 25px;
	}
	#benefit .teate_list li .ttl{
		padding-left: 15px;
		margin-bottom: 25px;
		font-size: 22px;
	}
	#benefit .teate_list li .ttl::before{
		border-width: 40px 0 0 40px;
		left: 5px;
		bottom: -10px;
	}
	#benefit .teate_list li .txt_box{
		font-size: 14px;
		padding: 0 10px;
	}
}

/* ===============================
 recruit 20200414 upgrade
===============================*/
#recruit .support_list li .inner_box .imgbox{
	margin-bottom: 3.6vw;
}
#recruit .support_list li .inner_box .txtbox p:not(:last-child){
	margin-bottom: 1.5em;
}
@media screen and (min-width:1100px){
	#recruit .support_list li .inner_box{
		display: flex;
		justify-content: space-between;
	}
	#recruit .support_list li .inner_box .imgbox{
		order: 2;
		margin-top: -50px;
		margin-bottom: 0;
	}
	#recruit .support_list li .inner_box .txtbox{
		width: 458px;
		order: 1;
		padding-right: 0;
		margin: 0;
	}
}

/* エントリーボタン */
#recruit .contact_bnr{
	width: 100%;
	box-sizing: border-box;
	padding: 2.4vw 3.6vw;
}
@media screen and (min-width:1100px){
	#recruit .contact_bnr,
	#recruit .contact_bnr a{
		/* padding: 15px 0 !important; */
	}
}

/* to_top */
@media screen and (min-width:769px){
	.recruit_foot .footer_top{
		bottom: 110px !important;
	}
}

#recruit .block7 .sns_blc .instagram_content{
	display: flex;
	flex-wrap: wrap;
}
#recruit .block7 .sns_blc .instagram_thumbnail{
	display: block;
	width: calc((100% - 5px * 2) / 3);
}
#recruit .block7 .sns_blc .instagram_thumbnail:not(:nth-child(3n)){
	margin-right: 5px;
}
#recruit .block7 .sns_blc .instagram_thumbnail:nth-child(n+4){
	margin-top: 5px;
}

/* ===============================
 20210304 upgrade
===============================*/
.cmn_teate_list li{
	padding: 2.4vw;
	background-color: #FFF;
	box-shadow: 0 0 3px 1px rgba(189, 210, 197, 0.4);
	margin-bottom: 4.8vw;
}
.cmn_teate_list li .img_box{
	margin-bottom: 3.6vw;
}
.cmn_teate_list li .ttl{
	padding-left: 3vw;
	margin-bottom: 3vw;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: .1em;
	line-height: 1.3;
	position: relative;
	z-index: 10;
}
.cmn_teate_list li .ttl::before{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6vw 0 0 6vw;
	border-color: transparent transparent transparent #ff9900;
	position: absolute;
	left: 1.2vw;
	bottom: -1.2vw;
	z-index: -1;
}
.cmn_teate_list li .txt_box{
	font-size: 1.2rem;
	letter-spacing: .1em;
	line-height: 1.6;
	padding: 0 5px;
}
.cmn_teate_list li .txt_box p:not(:last-child){
	margin-bottom: 1em;
}

@media screen and (min-width:1100px){
	.cmn_teate_list{
		display: flex;
		flex-wrap: wrap;
	}
	.cmn_teate_list li{
		padding: 10px;
		box-sizing: border-box;
		margin-bottom: 30px;
	}
	.cmn_teate_list li .img_box{
		margin-bottom: 25px;
	}
	.cmn_teate_list li .ttl{
		padding-left: 15px;
		margin-bottom: 25px;
		font-size: 22px;
	}
	.cmn_teate_list li .ttl::before{
		border-width: 40px 0 0 40px;
		left: 5px;
		bottom: -10px;
	}
	.cmn_teate_list li .txt_box{
		font-size: 14px;
		padding: 0 10px;
	}

	.cmn_teate_list.teate_list1{
		justify-content: space-between;
	}
	.cmn_teate_list.teate_list1 li{
		width: 535px;
	}
	.cmn_teate_list.teate_list2 li{
		width: 346px;
	}
	.cmn_teate_list.teate_list2 li:not(:nth-child(3n)){
		margin-right: calc((100% - 1038px) / 2);
	}
}

#eco_d3 .block2 .teate_list2{
	margin-bottom: 25px;
}
#eco_d3 .block2 .cmn_teate_list li{
	box-shadow: 0 0 10px 4px rgb(6 101 142 / 65%);
}


/* ===============================
 20220613
===============================*/
#work-environment .cmn-main{
	background-image: url(../img/work-environment/main_bg.jpg);
}
#work-environment .block1{
	background: url(../img/work-environment/page_bg.jpg) no-repeat center center;
	background-size: cover;
}
#work-environment .block1 .head_txt .ttl1{
	font-size: 2.5rem;
	text-align: center;
	margin-bottom: 1.8vw;
}
#work-environment .block1 .head_txt .txt1{
	text-align: center;
	font-size: 1.3rem;
	line-height: 1.4;
}
#work-environment .block1 .img_list{
	margin-top: 4.83vw;
}
#work-environment .block2 .cmn_teate_list li{
	margin: 0;
}
#work-environment .block3{
	background: #FFF8E5;
}
#work-environment .block3 .ttl1{
	text-align: center;
	font-weight: bold;
	font-size: 2.5rem;
	margin-bottom: 4.83vw;
}
#work-environment .list--faq-item:not(:last-child){
	margin-bottom: 2.41vw;
}
#work-environment .list--faq-q,
#work-environment .list--faq-a{
	display: flex;
}
#work-environment .list--faq-q .icon,
#work-environment .list--faq-a .icon{
	width: 2rem;
	font-weight: bold;
	font-size: 1.3rem;
}
#work-environment .list--faq-q .txt,
#work-environment .list--faq-a .txt{
	flex: 1;
}
#work-environment .list--faq-q{
	cursor: pointer;
	position: relative;
	background-color: #fff;
	padding: 3.62vw 14.49vw 3.62vw 4.83vw;
	transition: background .3s ease;
}
#work-environment .list--faq-q:before{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
	width: 2.65vw;
	height: 2.65vw;
	border-right: solid 1px #0CB0BE;
	border-bottom: solid 1px #0CB0BE;
	top: 50%;
	right: 3.62vw;
	transform: translate(-50%, -70%) rotate(45deg);
	transition: transform .4s ease, border .3s ease;
}
#work-environment .list--faq-q .icon{
	color: #0CB0BE;
	padding-top: 0.3em;
}
#work-environment .list--faq-q .txt{
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 1.6;
}
#work-environment .list--faq-a{
	padding: 3.62vw 4.83vw 2.41vw 4.83vw;
}
#work-environment .list--faq-a .icon{
	padding-top: 0.5em;
}
#work-environment .list--faq-a .txt{
	font-size: 1.3rem;
	line-height: 1.6;
}
#work-environment .list--faq-item.is--open .list--faq-q{
	background-color: #0CB0BE;
}
#work-environment .list--faq-item.is--open .list--faq-q .icon,
#work-environment .list--faq-item.is--open .list--faq-q .txt{
	color: #fff;
}
#work-environment .list--faq-item.is--open .list--faq-q:before{
	transform: translate(-50%, -30%) rotate(-135deg);
	border-color: #fff;
}
#work-environment .block4{
	background: url(../img/work-environment/page_bg02.jpg) no-repeat center center;
	background-size: cover;
}
#work-environment .block4 .bnr_box{
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #fff;
	background-color: #118E99;
	color: #fff;
	width: 100%;
	height: 14.49vw;
	transition: opacity .3s ease;
}
#work-environment .block4 .bnr_box:hover{
	opacity: 0.7;
}
#work-environment .block4 .bnr_box:hover{
	text-decoration: none;
}
#work-environment .block4 .bnr_box .bnr_icon{
	width: 5.55vw;
	margin-right: 1.2vw;
}
#work-environment .block4 .bnr_box .bnr_txt{
	font-size: 1.6rem;
	font-weight: bold;
}
#work-environment .block4 .bnr_box.bnr2 .bnr_icon{
	width: 3.14vw;
	margin-right: 1.81vw;
}
#work-environment .block4 .bnr_box.bnr2 .bnr_img{
	width: 19vw;
	margin-left: 1.5vw;
}

@media only screen and (max-width:768px){
	#work-environment .block1 .head_txt .ttl1{
		line-height: 1.5;
	}
	#work-environment .block1 .img_list{
		padding-left: 20px;
		padding-right: 20px;
	}
	#work-environment .block1 .img_box:not(:last-child){
		margin-bottom: 3.62vw;
	}
	#work-environment .block2 .ttl{
		letter-spacing: 0;
	}
	#work-environment .block2 .ttl br{
		display: none;
	}
	#work-environment .block2 .cmn_teate_list li:not(:last-child){
		margin-bottom: 4.8vw;
	}
	#work-environment .list--faq-a .icon{
		font-size: 1.1rem;
	}
	#work-environment .block4 .bnr_box:not(:last-child){
		margin-bottom: 3.62vw;
	}
}

@media only screen and (min-width:769px){
	#work-environment .block1 .head_txt .ttl1{
		font-size: 38px;
		margin-bottom: 30px;
	}
	#work-environment .block1 .head_txt .ttl1 br{
		display: none;
	}
	#work-environment .block1 .head_txt .txt1{
		font-size: 15px;
		line-height: 1.5;
	}
	#work-environment .block1 .img_list{
		margin-top: 50px;
		display: flex;
		justify-content: space-between;
	}
	#work-environment .block1 .img_box{
		width: 46.72%;
	}
	#work-environment .block2 .cmn_teate_list{
		display: flex;
		flex-wrap: wrap;
	}
	#work-environment .block2 .cmn_teate_list li{
		box-sizing: border-box;
		width: calc((100% - 60px) / 3);
	}
	#work-environment .block2 .cmn_teate_list li:not(:nth-child(3n)){
		margin-right: 30px;
	}
	#work-environment .block3 .ttl1{
		font-size: 40px;
		margin-bottom: 45px;
	}
	#work-environment .list--faq-item:not(:last-child){
		margin-bottom: 20px;
	}
	#work-environment .list--faq-q .icon,
	#work-environment .list--faq-a .icon{
		width: 35px;
		font-size: 22px;
	}
	#work-environment .list--faq-q,
	#work-environment .list--faq-a{
		padding: 25px 90px 25px 40px;
	}
	#work-environment .list--faq-q:before{
		width: 15px;
		height: 15px;
		right: 40px;
		border-width: 2px;
	}
	#work-environment .list--faq-q .icon{
		padding-top: 0.15em;
	}
	#work-environment .list--faq-q .txt{
		font-size: 18px;
		line-height: 1.6;
	}
	#work-environment .list--faq-a .icon{
		padding-top: 0.2em;
	}
	#work-environment .list--faq-a .txt{
		font-size: 15px;
	}
	#work-environment .block4{
		padding: 80px 0;
	}
	#work-environment .block4 .bnr_list{
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#work-environment .block4 .bnr_box{
		width: 41.81%;
		height: 120px;
	}
	#work-environment .block4 .bnr_box:not(:last-child){
		margin-right: 3.62%;
	}
	#work-environment .block4 .bnr_box .bnr_icon{
		width: 46px;
		margin-right: 10px;
	}
	#work-environment .block4 .bnr_box .bnr_txt{
		font-size: 24px;
	}
	#work-environment .block4 .bnr_box.bnr2 .bnr_icon{
		width: 26px;
		margin-right: 13px;
	}
	#work-environment .block4 .bnr_box.bnr2 .bnr_img{
		width: 139px;
		margin-left: 15px;
	}
}
@media only screen and (min-width:1100px){
	#work-environment .block4 .bnr_box{
		width: 460px;
	}
	#work-environment .block4 .bnr_box:not(:last-child){
		margin-right: 30px;
	}
}


/* ===============================
 sdgs SDGsについて 20230428
===============================*/
#sdgs .cmn-main {
	background-image: url(../img/sdgs/main_bg-sp.jpg);
}
#sdgs .cmn-main .txtbox{
	padding-top: 150px;
}

#sdgs .block-torikumi{
	position: relative;
	background: url(../img/sdgs/torikumi-bg-sp.jpg) no-repeat center bottom;
	background-size: 100% auto;
	padding-top: 30px;
	padding-bottom: 75px;
}
#sdgs .block-torikumi:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 91.18vw;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 34.42vw, rgba(255, 255, 255, 0) 100%);
}
#sdgs .block-torikumi .block-inner{
	position: relative;
	z-index: 2;
}
#sdgs .block-torikumi .block-ttl{
	margin-bottom: 15px;
}
#sdgs .block-torikumi .contents-wrap{
	background-color: #fff;
	padding: 0 20px 40px 20px;
}
#sdgs .block-torikumi .box-txt{
	font-size: 13px;
	line-height: 1.4;
	margin-top: 20px;
}
#sdgs .block-torikumi .box-txt p:not(:last-child){
	margin-bottom: 1.4em;
}

#sdgs .block-vision{
	padding-top: 35px;
	padding-bottom: 85px;
}
#sdgs .block-vision .cmn-ttl1_sub{
	margin-bottom: 20px;
}
#sdgs .block-vision .vision-block{
	padding: 40px 20px 35px 20px;
	background-color: #FDECEE;
}
#sdgs .block-vision .vision-block:not(:last-child){
	margin-bottom: 20px;
}
#sdgs .block-vision .vision-ttl{
	font-size: 15px;
	line-height: 1.5;
	font-weight: bold;
	color: #e4011e;
	margin-bottom: 20px;
}
#sdgs .block-vision .history-block{
	position: relative;
}
#sdgs .block-vision .history-block:not(:last-child){
	padding-bottom: 30px;
	border-bottom: 1px dashed #999;
}
#sdgs .block-vision .history-block:not(:last-child):after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 42.5px;
	height: 48px;
	background: url(../img/sdgs/vision-arrow-sdgs-1.png) no-repeat center center;
	background-color: #FDECEE;
	background-size: 27.5px 33px;
	bottom: -24px;
	left: calc((100% - 42.5px) / 2);
}
#sdgs .block-vision .history-block:not(:first-child){
	padding-top: 30px;
}
#sdgs .block-vision .history-year-box{
	display: flex;
	margin-bottom: 15px;
}
#sdgs .block-vision .history-year{
	padding: 5px;
	display: flex;
	align-items: center;
	background-color: #E4011E;
}
#sdgs .block-vision .history-year .ordinal-number{
	padding: 3px 6px;
	font-size: 13px;
	background-color: #fff;
	color: #e4011e;
}
#sdgs .block-vision .history-year .year{
	padding-left: 6px;
	font-size: 13px;
	color: #fff;
}
#sdgs .block-vision .history-txt-box{
	font-size: 13px;
	line-height: 1.4;
}

#sdgs .block-vision .sdgs-5{
	background-color: #FDEDEB;
}
#sdgs .block-vision .sdgs-5 .vision-ttl{
	color: #e83418;
}
#sdgs .block-vision .sdgs-5 .history-block:not(:last-child):after{
	background-image: url(../img/sdgs/vision-arrow-sdgs-5.png);
	background-color: #FDEDEB;
}
#sdgs .block-vision .sdgs-5 .history-year{
	background-color: #E83418;
}
#sdgs .block-vision .sdgs-5 .history-year .ordinal-number{
	color: #e83418;
}
#sdgs .block-vision .sdgs-7{
	background-color: #FEF9E8;
}
#sdgs .block-vision .sdgs-7 .vision-ttl{
	color: #FABD00;
}
#sdgs .block-vision .sdgs-7 .history-block:not(:last-child):after{
	background-image: url(../img/sdgs/vision-arrow-sdgs-7.png);
	background-color: #FEF9E8;
}
#sdgs .block-vision .sdgs-7 .history-year{
	background-color: #FABD00;
}
#sdgs .block-vision .sdgs-7 .history-year .ordinal-number{
	color: #FABD00;
}
#sdgs .block-vision .sdgs-8{
	background-color: #F7ECEF;
}
#sdgs .block-vision .sdgs-8 .vision-ttl{
	color: #970A31;
}
#sdgs .block-vision .sdgs-8 .history-block:not(:last-child):after{
	background-image: url(../img/sdgs/vision-arrow-sdgs-8.png);
	background-color: #F7ECEF;
}
#sdgs .block-vision .sdgs-8 .history-year{
	background-color: #970A31;
}
#sdgs .block-vision .sdgs-8 .history-year .ordinal-number{
	color: #970A31;
}

@media only screen and (max-width:768px){
	#sdgs .sp-none{
		display: none;
	}
	#sdgs .cmn-main .txtbox .page_ttl{
		text-shadow: none;
	}

	#sdgs .block-torikumi .block-ttl{
		line-height: 1.4;
	}

	#sdgs .block-vision .vision-block .wrap-icon{
		margin-bottom: 25px;
	}
	#sdgs .block-vision .vision-block .wrap-icon .icon{
		width: 201px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (min-width:769px){
	#sdgs .pc-none{
		display: none;
	}
	#sdgs .cmn-main {
		background-image: url(../img/sdgs/main_bg-pc.jpg);
		background-position: bottom right;
	}
	#sdgs .cmn-main .txtbox{
		padding-top: 250px;
	}

	#sdgs .block-torikumi{
		background-image: url(../img/sdgs/torikumi-bg-pc.jpg);
		padding-top: 60px;
		padding-bottom: 280px;
	}
	#sdgs .block-torikumi:before{
		height: 1065px;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 425px, rgba(255, 255, 255, 0) 100%);
	}
	#sdgs .block-torikumi .block-ttl{
		margin-bottom: 50px;
	}
	#sdgs .block-torikumi .contents-wrap{
		padding: 0 50px 100px 50px;
	}
	#sdgs .block-torikumi .box-txt{
		font-size: 17px;
		line-height: 2;
		margin-top: 55px;
	}
	#sdgs .block-torikumi .box-txt p:not(:last-child){
		margin-bottom: 2em;
	}

	#sdgs .block-vision{
		padding-top: 60px;
		padding-bottom: 80px;
	}
	#sdgs .block-vision .cmn-ttl1_sub{
		margin-bottom: 30px;
	}
	#sdgs .block-vision .vision-block{
		padding: 60px;
		display: flex;
	}
	#sdgs .block-vision .vision-block:not(:last-child){
		margin-bottom: 30px;
	}
	#sdgs .block-vision .wrap-icon{
		width: 268px;
	}
	#sdgs .block-vision .wrap-history{
		flex: 1;
		padding-left: 60px;
	}
	#sdgs .block-vision .vision-ttl{
		font-size: 20px;
		margin-bottom: 30px;
	}
	#sdgs .block-vision .history-block:not(:last-child){
		padding-bottom: 15px;
	}
	#sdgs .block-vision .history-block:not(:last-child):after{
		width: 28px;
		height: 32px;
		background-size: 18px 22px;
		bottom: -16px;
		left: 60px;
	}
	#sdgs .block-vision .history-block:not(:first-child){
		padding-top: 20px;
	}
	#sdgs .block-vision .history-year-box{
		margin-bottom: 10px;
	}
	#sdgs .block-vision .history-year{
		padding: 10px;
	}
	#sdgs .block-vision .history-year .ordinal-number{
		padding: 5px 7px;
		font-size: 17px;
	}
	#sdgs .block-vision .history-year .year{
		padding-left: 12px;
		font-size: 17px;
	}
	#sdgs .block-vision .history-txt-box{
		font-size: 17px;
		line-height: 2;
	}
}

/* ===============================
 leaders 業界のLEADERS 20230822
===============================*/
#leaders .cmn-main {
	background-image: url(../img/leaders/main_bg-sp.jpg);
}
#leaders .cmn-main .cmn-width,
#leaders .cmn-main .txtbox{
	height: 100%;
}
#leaders .cmn-main .txtbox{
	padding-top: 4.13vw;
	display: flex;
	align-items: center;
}
#leaders .cmn-main .page_ttl{
	margin: 0;
}

@media only screen and (min-width:769px){
	#leaders .cmn-main {
		background-image: url(../img/leaders/main_bg-pc.jpg);
	}
	#leaders .cmn-main .txtbox{
		padding-top: 47px;
	}
}

#leaders .block1{
	background: url(../img/leaders/block1_bg.jpg) no-repeat center center;
	background-size: cover;
}
#leaders .block1 .head_txt{
	margin-bottom: 10.8vw;
}
#leaders .block1 .head_txt_ttl{
	margin-bottom: 6.66vw;
}
#leaders .block1 .cmn-ttl1_sub{
	margin-bottom: 0;
}
#leaders .block1 .head_txt .txt1{
	font-size: 13px;
	line-height: 2;
}
#leaders .block1 .leader-list{
	display: flex;
	flex-wrap: wrap;
}
#leaders .block1 .leader-item{
	box-sizing: border-box;
	width: calc((100% - 4vw) / 2);
	background-color: #fff;
	overflow: hidden;
	border: 1px solid #C8C8C8;
	border-radius: 1.33vw;
}
#leaders .block1 .leader-item-inner{
	display: block;
	position: relative;
	height: 100%;
	display: flex;
		flex-direction: column;
}
#leaders .block1 .leader-item-inner:hover{
	text-decoration: none;
}
#leaders .block1 .leader-txt-box{
	position: relative;
	box-sizing: border-box;
	padding: 4vw 4vw calc(4vw + 2.66vw + 6.66vw) 4vw;
	flex: 1;
}
#leaders .block1 .leader-name{
	font-weight: 500;
	font-size: 15px;
}
#leaders .block1 .leader-position{
	font-size: 12px;
	line-height: 1.5;
	margin-top: 2.66vw;
	color: #6a6a6a;
}
#leaders .block1 .leader-btn{
	box-sizing: border-box;
	font-size: 12px;
	border: 1px solid #000;
	border-radius: 50px;
	width: 80%;
	height: 6.66vw;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	bottom: 4vw;
	left: calc((100% - 80%) / 2);
}

@media only screen and (max-width:768px){
	#leaders .block1 .sp-none{
		display: none;
	}
	#leaders .block1 .leader-list{
		justify-content: space-between;
	}
	#leaders .block1 .leader-item:nth-child(n+3){
		margin-top: 4vw;
	}
	#leaders .block1 .leader-item-inner{
		pointer-events: none;
	}
	#leaders .block1 .leader-btn{
		pointer-events: auto;
	}
}

@media only screen and (min-width:769px){
	#leaders .block1 .pc-none{
		display: none;
	}
	#leaders .block1 .head_txt{
		margin-bottom: 60px;
	}
	#leaders .block1 .head_txt_ttl{
		margin-bottom: 30px;
	}
	#leaders .block1 .head_txt .txt1{
		font-size: 16px;
		line-height: 1.56;
		text-align: center;
	}
	#leaders .block1 .leader-item{
		width: calc((100% - 30px * 2) / 3);
		border-radius: 10px;
	}
	#leaders .block1 .leader-item:not(:nth-child(3n)){
		margin-right: 30px;
	}
	#leaders .block1 .leader-item:nth-child(n+4){
		margin-top: 30px;
	}
	#leaders .block1 .leader-item-inner:before{
		content: '';
		display: block;
		position: absolute;
		pointer-events: none;
		z-index: 2;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background-color: #4D7952;
		opacity: 0;
		transition: opacity .3s ease;
	}
	#leaders .block1 a.leader-item-inner:hover:before{
		opacity: 1;
	}
	#leaders .block1 .leader-img-box{
		position: relative;
	}
	#leaders .block1 .leader-hover-layer{
		box-sizing: border-box;
		position: absolute;
		z-index: 3;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		padding-top: 24px;
		opacity: 0;
		transition: opacity .3s ease;
	}
	#leaders .block1 a.leader-item-inner:hover .leader-hover-layer{
		opacity: 1;
	}
	#leaders .block1 .leader-hover-layer-icon{
		width: 53px;
		margin: 0 auto 22px auto;
	}
	#leaders .block1 .leader-hover-layer-txt{
		box-sizing: border-box;
		width: 180px;
		height: 42px;
		font-size: 15px;
		color: #fff;
		border: 1px solid #fff;
		border-radius: 50px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#leaders .block1 .leader-txt-box{
		position: relative;
		z-index: 2;
		padding: 25px 5px;
		transition: background .3s ease;
	}
	#leaders .block1 a.leader-item-inner:hover .leader-txt-box{
		background-color: #486D4C;
	}
	#leaders .block1 .leader-name,
	#leaders .block1 .leader-position{
		transition: color .3s ease;
	}
	#leaders .block1 a.leader-item-inner:hover .leader-name,
	#leaders .block1 a.leader-item-inner:hover .leader-position{
		color: #fff;
	}
	#leaders .block1 .leader-name{
		font-size: 19px;
	}
	#leaders .block1 .leader-position{
		font-size: 14px;
		margin-top: 10px;
	}
}
@media only screen and (min-width:1100px){
	#leaders .block1 .leader-list{
		width: 900px;
		margin: 0 auto;
	}
}