/* ---------------------------------------------------------------
	start max 850px
--------------------------------------------------------------- */


@media print,screen and ( max-width: 850px ) {


	/*------------ common ------------*/



	/*------------ footer ------------*/

	#footer {
		background-size: 150% auto;
	}

	.col_footer {
		padding-bottom: 60px;
	}




	/*------------ top ------------*/


	#mainimg {
		height: 110.5vw;
	}

	#mainimg .sp_none {
		display: none;
	}

	#mainimg .pc_none.tab_none {
		display: inline-block;
	}

	ul.bg_mainimg {
		width: 100%;
		height: auto;
		margin: 0;
		left: 0;
	}

	.active ul.bg_mainimg li {
		width: 33.3333%;
	}

	ul.bg_mainimg li img {
		height: 37.8vw;
	}

	.col_mainimg {
		padding: 14vw 0 0 0;
		box-sizing: border-box;
		display: block;
	}

	.copy_mainimg {
		width: 76.4%;
		max-width: 550px;
		margin: 0 auto 7%;
		padding: 0;
		text-align: center;
	}

	.copy_mainimg div {
		margin: 0 auto 6%;
	}

	.img_mainimg {
		width: 84%;
		margin: 0 auto;
		position: relative;
		right: 0;
	}

	.bg_topgreeting {
		overflow: hidden;
		position: relative;
		z-index: 0;
	}

	.bg_topgreeting .col_top1 {
		position: static;
	}

	dl.txt_topgreeting {
		width: 100%;
	}

	dl.txt_topgreeting dt {
		min-width: 71%;
		display: inline-block;
	}

	dl.txt_topgreeting dd {
		width: 77%;
	}

	.name_topgroup {
		margin: 0 10px;
	}

	.img_topgreeting {
		width: 200px;
		left: 72%;
	}

	.txt_topproduct {
		width: 60%;
		font-size: 35px;
	}

	.img_topproduct {
		width: 52%;
		right: auto;
		left: 68%;
	}

	.img_topproduct img {
		top: auto;
	}

	.bnr_top dl dt {
		font-size: 22px;
	}

	.bnr_top dl dd {
		font-size: 13px;
	}

	.cont_toprecruit dl {
		margin-bottom: 15px;
	}



	/*------------ contact ------------*/

	.cont_contact1 {
		padding: 3vw 3vw 5.5vw;
	}

	.cont_contact1 ul.telno_contact li {
		width: 70%;
		max-width: 300px;
		margin: 4vw auto 0;
		padding: 0;
		text-align: center;
		float: none;
	}

	.cont_contact1 ul.telno_contact li:first-child {
		margin: 0 auto;
	}

	.cont_contact1 ul.telno_contact li span {
		margin: 0 0 1vw;
	}

	dl.list_contact {
		width: 100%;
	}

	dl.list_contact dt {
		width: 210px;
		padding-left: 3%;
	}



	/*------------ company ------------*/

	.col_company_philosophy1 {
		padding: 70px 3% 70px;
	}

	ol.list_company_philosophy1 {
		margin-bottom: 50px;
	}

	.txt_company_philosophy2 {
		margin-bottom: 0;
	}

	ul.col_logo_company li {
		padding: 15px 10px;
	}

	.img_logo_company {
		width: 35%;
	}

	.txt_logo_company {
		padding-left: 15px;
	}

	.txt_logo_company:before {
		width: 90%;
		height: 25%;
	}

	.tabbtn_company.btm {
		margin-bottom: 50px;
	}

	.box_company_history1 dl {
		margin-bottom: 50px !important;
	}

	.box_company_history1 dl.right.short dt {
		padding-left: 25px;
	}

	.box_company_history1 dl.right.short dd {
		padding-left: 45px;
	}

	dl.list_company_unit1 dt {
		width: 340px;
		height: 115px;
		padding-left: 28px;
	}

	dl.list_company_unit1 dt .small {
		margin-top: 10px;
	}

	dl.list_company_unit1 dd.img_company_unit1 img {
		height: 350px;
	}

	ul.col_bnr_company li a {
		padding-bottom: 15px;
	}

	.img_bnr_company {
		margin-bottom: 14px;
	}

	.col_company_group1 {
		padding: 70px 0 60px;
	}

	.col_company_group1:nth-of-type(4) {
		padding: 70px 0 60px;
	}

	.col_company_unit1.btm {
		padding-top: 0;
	}

	.col_company_unit1:nth-child(even) {
		padding: 70px 0;
	}



	/* --------------- news --------------- */

	dl.list_news1 dt,
	dl.list_news1 dd {
		width: 95%;
		margin: 0 auto;
		padding: 0;
		float: none;
	}

	dl.list_news1 dd:last-child {
		width: 70%;
		margin: 20px auto 0 auto;
	}

	dl.list_news1.noimg dd {
		width: 95%;
		margin: 0 auto;
		padding: 0;
	}



	/* --------------- advantage --------------- */

	.img_advantage1 {
		width: 200px;
		top: -85px;
	}

	.col_advantage1 {
		margin: 70px 0 0 0;
		padding: 160px 0 70px 0;
	}

	.catch_advantage1 {
		margin-bottom: 110px;
	}

	.mds_advantage1 {
		top: -40px;
		left: 35px;
	}

	.mds_advantage1 img {
		width: auto;
		height: 55px;
	}

	.col_advantage4 {
		padding: 110px 0 80px 0;
	}

	.col_advantage5 {
		padding: 100px 0 90px 0;
	}



	/* --------------- company_world --------------- */

	.col_world2 {
		margin: 0 auto 80px;
	}

	.inner_btmlink a span {
		padding: 15px 0 15px 22px;
		font-size: 15px;
	}



	/* --------------- company_story --------------- */

	.col_story1 {
		margin: 0 0 80px 0;
	}

	.lead_story1 {
		min-height: auto;
		padding: 0 5%;
		background: none;
	}

	.bgimg_story1 {
		margin: 10px 0 10px 10px;
		display: block;
		float: right;
	}

	.lead_story1 p,
	.lead_story2 p {
		display: inline;
	}

	.lead_story2 {
		width: 100%;
		margin: 0 auto;
		padding: 0;
		background: none;
	}

	.bgimg_story2 {
		width: 50%;
		margin: 10px 10px 10px 0;
		display: block;
		float: left;
	}

	.bg_story2 {
		padding: 0 0 80px 0;
	}



	/* --------------- csr --------------- */

	.col_csr1 {
		padding: 18px 0 50px 0;
	}

	dl.list_policy1 {
		margin-bottom: 15px;
		padding: 20px;
		background-image: url(../img/csr/sp/bg_csr_policy.jpg);
		background-size: 100% auto;
		display: block;
	}

	dl.list_policy1 dt {
		width: auto;
		height: 60px;
		padding: 12px 0 0 70px;
		border-right: none;
		border-bottom: solid 1px #fff;
		display: block;
		position: relative;
		z-index: 0;
	}

	dl.list_policy1 dt img {
		width: 42px;
		padding-right: 20px;
		position: absolute;
		top: 0;
		left: 10px;
	}

	dl.list_policy1 dt .small {
		margin-top: 6px;
		text-align: left;
		display: block;
	}

	dl.list_policy1:nth-of-type(3) dt {
		padding-top: 0px;
	}

	dl.list_policy1 dd {
		width: auto;
		padding: 12px 0 0 0;
		display: block;
	}

	.mds_policy1 {
		width: 500px;
		margin-bottom: 25px;
	}

	.mds_policy1.right {
		margin-bottom: 30px;
	}

	.mds_policy1:after {
		top: -78px;
		left: 56px;
	}
	.mds_policy1.right:after {
		right: 56px;
	}

	.col_csr2 {
		padding: 65px 0 70px 0;
	}

	dl.list_policy2.btm2 {
		margin-bottom: 200px;
	}

	.box_csr_for {
		max-width: 100%;
	}

	.box_csr_for dl {
		width: 90%;
		max-width: 100%;
		margin: 0 auto 170px;
	}

	.box_csr_for dl:last-child {
		margin-bottom: 50px;
	}

	.box_csr_for dl dt {
		width: 500px;
	}

	.box_csr_for dl:nth-child(odd),
	.box_csr_for dl:nth-child(even) {
		float: none;
	}

	.box_csr_for dl dt {
		padding-left: 65px;
		font-size: 25px;
		line-height: 68px;
	}

	.box_csr_for dl dt:before {
		height: 54px;
	}

	.box_csr_for dl dt:after {
		width: 750px;
		height: 168px;
		top: -120px;
		left: 70px;
	}

	.box_csr_for dl:nth-of-type(1) dt:after {
		background-image: url(../img/csr/sp/img_csr3.jpg);
	}
	.box_csr_for dl:nth-of-type(2) dt:after {
		background-image: url(../img/csr/sp/img_csr4.jpg);
	}
	.box_csr_for dl:nth-of-type(3) dt:after {
		background-image: url(../img/csr/sp/img_csr5.jpg);
	}
	.box_csr_for dl:nth-of-type(4) dt:after {
		background-image: url(../img/csr/sp/img_csr6.jpg);
	}

	.box_csr_for dl dd {
		padding-left: 0;
	}

	dl.list_policy2 dd {
		padding-right: 5px;
	}

	.col_csr3 {
		padding: 138px 0 28px 0;
	}


	/* --------------- effort --------------- */

	ul.pagenavi_effort {
		padding-bottom: 30px;
	}

	ul.pagenavi_effort li {
		height: 50px;
	}

	ul.pagenavi_effort li a {
		font-size: 16px;
	}

	ul.pagenavi_effort li span:before {
		top: 4px;
	}

	.col_effort1 {
		padding: 60px 0;
	}

	.box_effort7s {
		width: 500px;
		margin-bottom: 50px;
		text-align: center;
		line-height: 1;
	}

	ul.item_effort7s {
		display: inline-block;
		float: none;
	}

	ul.item_effort7s li {
		width: 110px;
		height: 110px;
		margin-right: 12px;
		display: inline-table;
	}

	.list_effort7s dl {
		width: 100%;
		max-width: 100%;
		margin-bottom: 30px;
		float: none;
	}

	.list_effort7s dl:last-child {
		margin-bottom: 0;
	}

	.list_effort7s dl dd h4 {
		margin-bottom: 10px;
		padding-bottom: 7px;
	}

	.list_effort7s dl dd p .tab_none {
		display: none;
	}

	.circle_effort7s {
		width: auto;
	}

	.circle_effort7s dl {
		width: 31.33%;
		height: 29.45vw;
		margin-right: 3%;
		padding-top: 7vw;
	}

	.circle_effort7s dl:before {
		width: 5vw;
		top: 16px;
		left: 2vw;
	}

	.circle_effort7s dl dt {
		margin-bottom: 3.2vw;
		font-size: 18px;
	}

	.circle_effort7s dl dd {
		font-size: 14px;
		line-height: 21px;
	}

	.circle_effort7s dl:nth-child(2) dd {
		padding: 0 3vw;
	}

	.circle_effort7s dl:nth-child(2) dd .sp_none {
		display: none;
	}

	.list_effort_smile dl {
		width: 100%;
		max-width: 100%;
		float: none;
	}


	/* --------------- common - sustainability --------------- */
	
	.wrap_sustainability {
		width: 100%;
		display: block;
	}
	.wrap_sustainability #side {
		width: 100%;
		margin: 0;
		background-color: #fff;
		display: flex;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 100;
	}
	.wrap_sustainability #side dl.sidemenu {
		width: calc( 100% / 3 );
		margin: 0;
		position: relative;
	}
	.wrap_sustainability #side dl.sidemenu dt {
		margin: 0;
		display: block;
	}
	.wrap_sustainability #side dl.sidemenu dt .txt {
		width: 100%;
		padding: 13px 5px 2px;
		text-align: center;
		box-sizing: border-box;
		position: relative;
		z-index: 0;
	}
	.wrap_sustainability #side dl.sidemenu dt .txt::before {
		content: "";
		width: 8px;
		height: 8px;
		margin: 0;
		padding: 0;
		border-top: solid 1px #fff;
		border-right: solid 1px #fff;
		transform: rotate(-45deg);
		position: absolute;
		top: 8px;
		left: calc( 50% - 4px );
	}
	.wrap_sustainability #side dl.sidemenu dt .img { display: none; }
	.wrap_sustainability #side dl.sidemenu dd {
		width: 100vw;
		padding: 1em;
		box-sizing: border-box;
		display: none;
		position: relative;
	}
	.wrap_sustainability #side dl.sidemenu.environment dd { background-color: #00aa71; }
	.wrap_sustainability #side dl.sidemenu.social dd {
		background-color: #ed6c00;
		left: -33.333vw;
	}
	.wrap_sustainability #side dl.sidemenu.governance dd {
		background-color: #0075c2;
		left: -66.666vw
	}
	.wrap_sustainability #side dl.sidemenu dd ul {
		background-color: #fff;
	}
	.wrap_sustainability #side dl.sidemenu dd ul li {
		padding: 0;
		border-bottom: solid 1px;
	}
	.wrap_sustainability #side dl.sidemenu dd ul li:last-child { border-bottom: none; }
	.wrap_sustainability #side dl.sidemenu.environment dd ul li { border-bottom-color: #00aa71; }
	.wrap_sustainability #side dl.sidemenu.social dd ul li { border-bottom-color: #ed6c00; }
	.wrap_sustainability #side dl.sidemenu.governance dd ul li { border-bottom-color: #0075c2; }
	.wrap_sustainability #side dl.sidemenu dd ul li a {
		padding: 0.8em 5px 0.8em 40px;
	}
	.wrap_sustainability #side dl.sidemenu.environment dd a.current { background-color: #e6fff7; }
	.wrap_sustainability #side dl.sidemenu.social dd a.current { background-color: #ffefe2; }
	.wrap_sustainability #side dl.sidemenu.governance dd a.current { background-color: #e9f6ff; }
	.wrap_sustainability #side dl.sidemenu dd a::before { top: calc( 0.8em + 2px ); }
	.wrap_sustainability #side dl.sidemenu dd a::after { top: calc( 0.8em + 5px ); }
	.wrap_sustainability #main {
		width: 92%;
		margin: 0 auto;
	}
	
	.cont_sustainability_d { width: 100%; }
	
	
	/* --------------- environment - sustainability --------------- */
	
	.cont_chart_iso .box { font-size: 20px; }
	.cont_chart_iso .area dl dt {
		height: 2.6em;
		font-size: 20px;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
	}
	.cont_chart_iso .area dl dd { height: calc( 100% - 67.6px ); }



	/* --------------- recruit_new --------------- */

	.col_rec_message p,
	.col_rec_message p.btm {
		width: 100%;
	}

	.col_rec_message p.btm {
		margin: 0;
	}

	.col_recruit:before {
		width: 100%;
		height: 50vw;
		top: 30px;
		left: 78vw;
	}

	.mds_recevent {
		font-size: 13px;
	}

	.col_recruit {
		padding: 60px 0;
	}

	.bg_recinterview {
		margin: 0;
		padding: 0;
	}

	/* ���Ў��E���C */

	.col_list_training {
		width: 100%;
		margin: 0 0 6%;
		padding: 0;
		float: none;
	}

	.img_training {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
		padding: 0;
		float: none;
	}

	.confirm .btnarea_recform input {
		width: 47%;
		box-sizing: border-box;
	}

	.confirm .btnarea_recform input[name="submitBack"] {
		margin-right: 4%;
	}



	/* --------------- product --------------- */

	.name_list_product {
		font-size: 1.7vw;
	}

	.box_pickup_product dl {
		padding: 10px 13px;
	}

	.box_pickup_product a {
		right: 13px;
	}


/* --------------- actionplan --------------- */

	ul.list_actionplan_goal {
		text-align: left;
	}



/* ---------------------------------------------------------------
	end max 850px
--------------------------------------------------------------- */

}
