@charset "UTF-8";
/*
-------- umwelt.css --------
キーカラー
 #fa037f ...ピンク
 #727171...グレー
 #fffff ...ホワイト
 #c6ba9a ...ベージュ　
*/

div#page{
	min-height: 60vh;
	}

html{
	font-size: 62.5%;
	}
body.no-scroll {
	overflow: hidden;
	position: fixed;
	width: 100%;
	}
.wrap_smt_scroll{
	overflow-y: auto;   /* メニューの縦方向のオーバーフローをスクロール可能に */
	max-height: 100vh;  /* メニューの最大高さをビューポートの高さに制限 */
	}
	
body,
div,
p,
li,dt,dd,
a,
h1,h2,h3,h4,h5,h6,
section.fdb_block div,
section.fdb_block p,
section.fdb_block li{
	color: #707070;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	}
section.fdb_block div.column1_limited, section.fdb_block div.column1_center, section.fdb_block div.column2_text_img, section.fdb_block div.column2_img_text, section.fdb_block div.panel {
		max-width: 1080px;
	}
section.fdb_block h1,
section.fdb_block h2,
section.fdb_block h3,
section.fdb_block h4,
section.fdb_block h5,
section.fdb_block h6{
	font-weight: normal;
	}
section.fdb_block h3{
	font-weight: 600;
	}


ul,li{
	margin: 0 auto;
	padding: 0;
	}
li{
	list-style: none;
	margin: 0;
	padding: 0;
	}
h1,h2,h3,h4,h5,h6,
strong{
	margin: 0;
	padding: 0;
	font-weight: 600;
	}

a{
	/*color: #ff0000;*/
	text-decoration: none;
	}
a:hover{
	text-decoration: underline;
	}
a.pdf_link,
a.ex_link{
	display: inline-block;
    padding-right: 24px;
	position: relative;
	}
a.pdf_link:after,
a.ex_link:after{
	content: " ";
	width: 16px;
	height: 24px;
	display: block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;	
	position: absolute;
	right: 0;
	top:0;
	bottom: 0;
	margin: auto;
	}
a.pdf_link:after{
	background-image: url(/media/icon_pdf.png);
	}
a.ex_link:after{
	background-image: url(/media/icon_ex_link.png);
	}

img,
video{
	max-width: 100%;
	vertical-align: top;
	}

.red{
	color: #EA5446;
	}

section.fdb_block .fdt_ul_text > li:before{
	font-size: 1.3rem;
	}
section.fdb_block img{
	width: auto;
	}
.wrap_inner{
	max-width: 1280px;
	margin: 0 auto;
	width:calc( 100% - 40px);
	}
.block_border_bottom{
	border-bottom: 1px solid #fff;
	}

section.fdb_block .fdt_innner{
	max-width: 1080px;
	margin: 0 auto;
	}

section.fdb_block.notfound40 .fdt_innner{
	min-height: 30vh;
	}


/*Local*/

section.fdb_block.mainvis_amf2023{
	background:#fa037f;
	padding:20px;
	}
section.fdb_block.mainvis_amf2023 fdt_ul_img li{
	position: relative;
	}

section.fdb_block.mainvis_amf2023 img{
	width:100%;
	}
section.fdb_block.mainvis_amf2023 strong{
	background: red;
	display: block;
	position: absolute;
	top:0;
	}


/* --------------- プレーンなテキストブロック -------------- */
section.fdb_block .fdt_innner.wrap_baseblock{
	
	}
section.fdb_block .fdt_innner.wrap_baseblock h1,
section.fdb_block .fdt_innner.wrap_baseblock h2,
section.fdb_block .fdt_innner.wrap_baseblock h3{
	
	}
section.fdb_block .fdt_innner.wrap_baseblock h2{
	font-size: 2.2rem;
	margin-bottom: 40px;
	}
section.fdb_block .fdt_innner.wrap_baseblock div.tex{
	width:auto;
	}
section.fdb_block .fdt_innner.wrap_baseblock div.tex p{
	font-size: 1.4rem;
	line-height: 2.8rem;
	}

a.btn_normal {
	display: inline-block;
	margin: 0 auto;
	padding: 5px 60px;
	text-align: center;
	margin: 10px auto;
	min-width: 200px;
	font-size: 1.8rem;
	line-height: 50px;
	height: 50px;
	border-radius: 40px;
	border: 1px solid #2F3893;
	font-weight: 600;
	background: #2F3893;
	color: #fff;
	}
a.btn_normal:hover{
	background: #fff;
	color: #2F3893;
	text-decoration: none;
	}
.tex_block a.btn_normal {
	background: #fff;
	color: #2F3893;
	margin-left: 10px;
	margin-right: 10px;
	}
.tex_block a.btn_normal:hover{
	background: #2F3893;
	color: #fff;
	}
.content_body .tex_block:last-child a.btn_normal {
	background: #2F3893;
	color: #fff;
	}
.content_body .tex_block:last-child a.btn_normal:hover{
	background: #fff;
	color: #2F3893;
	}

/
*



@media (max-width: 768px) {

	a.btn_normal{
		font-size: 1.6rem;
		line-height: 30px!important;
		height: 30px;
		padding: 5px 30px;
		margin: 20px auto;
		}

}

/* --------------- スマホ設定(PC) -------------- */
.pc{}
.smt{display: none;}

@media (max-width: 768px) {
	.pc{display: none!important;}
	.smt{display: block;}
	img.smt {display: inline-block;}
}

/* --------------- 背景色 -------------- */
.bg_pale_blue{
	background-color: #EFF5F3;
	}

/* --------------- margin -------------- */

.mb0{ margin-bottom: 0px!important; }
.mb10{ margin-bottom: 10px!important; }
.mb20{ margin-bottom: 20px!important; }
.mb40{ margin-bottom: 40px!important; }
.mb80{ margin-bottom: 80px!important; }
.mb120{ margin-bottom: 120px!important; }

/* --------------- padding -------------- */

.pad40{ padding: 40px!important; }
.pad80{ padding: 80px!important; }

.pt0{ padding-top: 0px!important; }

.pb0{ padding-bottom: 0px!important; }
.pb10{ padding-bottom: 10px!important; }
.pb20{ padding-bottom: 20px!important; }
.pb40{ padding-bottom: 40px!important; }
.pb80{ padding-bottom: 80px!important; }
.pb120{ padding-bottom: 120px!important; }

/* --------------- 画像のサイズ制御 -------------- */
section .fdt_innner.img100pct .fdt_ul_img img{ width: 100%; }
section .fdt_innner.img200px .fdt_ul_img img{ max-width: 200px; }
section .fdt_innner.img400px .fdt_ul_img img{ max-width: 400px; }
section .fdt_innner.img600px .fdt_ul_img img{ max-width: 600px; }
section .fdt_innner.img800px .fdt_ul_img img{ max-width: 800px; }
section .fdt_innner.img1080px .fdt_ul_img img{ max-width: 1080px; }
img.img100pct{ width: 100%!important; }
img.img200px{ max-width: 200px!important; }
img.img400px{ max-width: 400px!important; }
img.img600px{ max-width: 600px!important; }
img.img800px{ max-width: 800px!important; }
img.img1080px{ max-width: 1080px!important; }

/* --------------- リスト行頭に・ -------------- */
section .fdt_innner.prefixed_list ul{
	
	}
section .fdt_innner.prefixed_list ul > li{
	position: relative!important;
	padding-left: 1.5em!important;
	}
section .fdt_innner.prefixed_list ul > li:before{
	content:"■"!important;
	color: #EA5446!important;
	position: absolute!important;
	top:0!important;
	left:0!important;
	font-size: 1.0rem!important;
	}
section .fdt_innner.prefixed_list ul.fdt_ul_text > li{
	padding-left: 0!important;
	}
section .fdt_innner.prefixed_list ul.fdt_ul_text > li:before{
	display: none;
	}
	@media (max-width: 768px) {	
		section .fdt_innner.prefixed_list ul li{ padding-left: 1.3em!important; }
		}
/* --------------- リスト行頭に数字 -------------- */
section .fdt_innner.prefixed_list ol{
	margin: 0 0 0 20px;
	padding: 0;
	}
section .fdt_innner.prefixed_list ol li{
	position: relative!important;
	margin: 0 0 5px 0 ;
	padding: 0;
	font-size: 1.6rem;
    line-height: 3.0rem;
	list-style-type: decimal;
	}
section .fdt_innner.prefixed_list ol li:maker{
	background: red;
	display: inline-block;
	color: red;
	}
section .fdt_innner.prefixed_list ol li:before{
/*
	content:"■"!important;
	color: #EA5446!important;
	position: absolute!important;
	top:0!important;
	left:0!important;
	font-size: 1.0rem!important;
*/
	}
section .fdt_innner.prefixed_list ol.fdt_ul_text > li{
	padding-left: 0!important;
	}
section .fdt_innner.prefixed_list ol.fdt_ul_text > li:before{
	display: none;
	}
	@media (max-width: 768px) {	
		section .fdt_innner.prefixed_list ol li{ padding-left: 1.3em!important; }
		}

/* --------------- テキストインデント付与・ -------------- */
.tex_indent{
	text-indent: -1.1em;
    padding-left: 1.1em;
    display: inline-block;
	}

/* --------------- 署名・右寄せ -------------- */
section.fdb_block div.tex span.signnature{
	display: block;
	text-align: right;
	}



section.fdb_block h2.pagetitle{
	font-size: 2.4rem;
	line-height: 3.6rem;
	text-align: center;
	position: relative;
	margin: 0 auto;
	margin-bottom: 80px;
	}
section.fdb_block h2.pagetitle span{
	display: block;
	position: absolute;
	margin: 0 auto;
	left: 0;
	right: 0;
	font-size: 1.6rem;
	top: 60px;
	}
section.fdb_block h2.pagetitle:after{
	content: " ";
	width: 30px;
	height: 2px;
	background: #EA5446;
	position: absolute;
	bottom: -20px;
	left: 0;
	right: 0;
	margin: auto;
	}



/* --------------- header -------------- */

header{
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto;
	position: fixed;
	width: 100%;
	background: #fff;
	z-index: 10;
	height: 70px;
	overflow: hidden;
	}

header a{
	color: #333;
	}
div.header_inner{
	width: 100%;
	/* max-width: 1080px; */
	margin: 0 auto;
	position: relative;
	}

#underheader{ /* header高さ分をセットしてfixed分の高さを確保 */
	height: 102px;
	}

header h1,
header ul.mainMenu li,
header ul.subMenu{
	margin: 0;
	padding: 10px;
	}

header h1{
	position: absolute;
	top:0;
	left: 20px;
    width: 260px;
	}

header h1 img{
	width: auto;
	}
header ul.mainMenu{
	display: flex;
	margin: 0 0 0 auto;
	padding: 0;
	gap: 0;
	justify-content: center;
	align-items: center;
	}
header ul.mainMenu li{
	list-style: none;
    font-size: 1.4rem;
    line-height: 1.6rem;
    height: auto;
    font-weight: 600;
    padding: 0 5px;
	margin-left: 10px;
	}
header ul.mainMenu li img{
	height: 70px;
	}
header ul.mainMenu li.btn_smartmenu{
	display: none;
	}
header ul.mainMenu li a{
	margin: 0;
    padding: 0;
    display: block;
    text-decoration: none;
    font-weight: 600;
	border-bottom: 4px solid #fff;
    padding-bottom: 10px;
    padding-top: 15px;
	}
header ul.mainMenu li a sub{
	display: block;
	font-size: 1.0rem;
	}

header ul.mainMenu li a:hover{
	border-bottom: 4px solid #ccc;
	}
header ul.mainMenu li.current{

	}
header ul.mainMenu li.current a{
	border-bottom: 4px solid #309a8c;
    padding-bottom: 10px;
    padding-top: 15px;
	}

header ul.mainMenu li:nth-last-child(2),
header ul.mainMenu li:nth-last-child(3),
header ul.mainMenu li:nth-last-child(4){
	height: 70px;
	margin: 0;
	padding: 0;
	}
header ul.mainMenu li:nth-last-child(2) a,
header ul.mainMenu li:nth-last-child(3) a,
header ul.mainMenu li:nth-last-child(4) a{
	margin:0;
	padding:20px 15px 15px 15px;
	color: #fff;
	min-width: 100px;
	text-align: center;
	height: 35px;
	}
header ul.mainMenu li:nth-last-child(2) a:hover,
header ul.mainMenu li:nth-last-child(3) a:hover,
header ul.mainMenu li:nth-last-child(4) a:hover{
	background: #ccc;
	color: #000;
	}

header ul.mainMenu li:nth-last-child(2) a{
	padding-top: 26px;
	}
header ul.mainMenu li:nth-last-child(2){ background-color: #2F9A8C; }
header ul.mainMenu li:nth-last-child(3){ background-color: #FD1D1D; }
header ul.mainMenu li:nth-last-child(4){ background-color: #2F3893; }

header ul.mainMenu li:nth-last-child(4){
	border-bottom-left-radius:  10px;
	border-bottom-right-radius:  10px;
	margin-left: 20px;
	margin-right: 10px;
	position: relative;
	}
header ul.mainMenu li:nth-last-child(4):before{
	content: "";
	display: block;
	width: 40px;
	height: 70px;
	background-size: contain;
	background-image: url("/media/icon_syokuhinrecycle_jp.png");
	background-repeat:no-repeat;
	background-position: left center;
	position: absolute;
	top:0;
	left: 15px;
	}

header ul.mainMenu li:nth-last-child(4) a{
	padding-left: 65px;
    text-align: left;
	}
header ul.mainMenu li:nth-last-child(4) a:hover{
	border-bottom-left-radius:  10px;
	border-bottom-right-radius:  10px;
	}



header ul.subMenu{
	position: absolute;
	display: flex;
	top:0;
	right: 0;
	}
header ul.subMenu li{
	list-style: none;
	}
header ul.subMenu li.btn_contact{
	padding: 0;
	}
header ul.subMenu li.btn_smartmenu{
	padding: 15px;
	}
header ul.subMenu li.btn_contact a{
	background: #393636;
	color: #fff;
	font-size: 1.5rem;
	line-height: 5.0rem;
	display: block;
	padding: 0;
	text-align: center;
	width: 180px;
	height: 5.0rem;
	border-radius: 2.5rem;
	margin-top: 6px;
	font-weight: 600;
	}
header ul.subMenu li.btn_contact a:hover{
	text-decoration: none;
	background: #EB5D3B;
	}

header .wrap_sub_contents{
	width: 100%;
	background: #EEEEEE;
	}
header .wrap_sub_contents ul{
	display: flex;
	top:0;
	right: 0;
	gap: 10px;
	align-items:center;
	justify-content: center;

	}
header .wrap_sub_contents ul li a{
	display: block;
	padding: 16px;
	font-size: 1.4rem;
	line-height: 2.0rem;
	font-weight: 600;
	}

/* --------------- Footer -------------- */

.footer_contacts{
	background: #393636;
	margin-bottom:80px;
	}
.footer_contacts li,
.footer_contacts h2,
.footer_contacts p,
.footer_contacts a{
	color: #fff;
	text-align: center;
	}
.footer_contacts ul{
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	width: 100%;
	margin: 0;
	padding: 0;
	}
.footer_contacts ul li{
	text-align: center;
	width: calc((100% - 2px) / 2);
	padding: 80px 0;
	margin: 0;
	}
.footer_contacts ul li:nth-child(1){
	border-right: 1px solid #D4D4D4;
	}
.footer_contacts h2{
	font-size: 3.5rem;
	font-weight: normal;
	font-family: 'Raleway', sans-serif;
	}
.footer_contacts h2 span{
	font-size: 1.2rem;
	font-style: normal; 
	display: block;
	margin: 20px auto;
	}
.footer_contacts p{
	font-size: 1.4rem;
	line-height: 2.4rem;
	}
.footer_contacts a{
	background: #fff;
	color: #393636;
	font-size: 1.5rem;
	line-height: 6.2rem;
	font-weight: 600;
	display: block;
	width: 320px;
	height: 6.2rem;
	margin: 40px auto 0 auto;
	border-radius: 3.1rem;
	font-weight: 500;
	}
.footer_contacts a:hover{
	text-decoration: none;
	background: #EA5446;
	color: #fff;
	}
p.explanatory_note{
	background: #eda700;
	color: #fff;
	margin: 0;
	padding: 5px 10px;
	font-size: 1.3rem;
	}
p.explanatory_note.strong{
	font-size: 1.5rem;
	}

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

.wrap_footer_contact{
	padding: 80px;
	background: #323893;
	}
.wrap_footer_contact h2,
.wrap_footer_contact p{
	color: #fff;
	text-align: center;
	}
.wrap_footer_contact h2{
	font-size: 2.4rem;
    margin-bottom: 40px;
	font-weight: normal;
	}
.wrap_footer_contact p{
	font-size: 1.8rem;
    margin-bottom: 40px;
	}
.wrap_footer_contact  ul{
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: center;
	max-width: 800px;
	}
.wrap_footer_contact  ul li{
	border: 1px solid #fff;
	color: #fff;
	font-size: 1.8rem;
	flex: 1;
	}
.wrap_footer_contact  ul li a{
	display: block;
	background: #fff;
	color: #323893;
	padding: 20px;
	text-align: center;
	}
.wrap_footer_contact  ul li:last-child{
    text-align: center;
    padding: 11px;
    font-size: 3.0rem;
    font-weight: bold;
	}

footer{
	background: #F5F5F5;
	padding: 20px;
	}
footer .wrap_inner{
	max-width: 900px;
	}
footer .wrap_inner div.footer1{
	margin-bottom: 40px;
	}
footer .wrap_inner div.footer1 p{
	font-size: 1.6rem;
	line-height: 2.8rem;
	}
footer .wrap_inner div.footer2{
	display: flex;
	gap: 20px;
	justify-content: center;
	padding-bottom: 0px;
	margin-bottom: 0px;
	width: 100%;
	}
footer .wrap_inner div.footer2 div{
	flex: 1;
	}
footer .wrap_inner div strong{
	font-size: 1.6rem;
	color: #48A7A6;
	display: block;
	margin-bottom: 10px;
	}
footer .wrap_inner div ul li{
	font-size: 1.3rem;
	line-height: 2.6rem;
	}

footer h1{
	width: 300px;
	}

footer .sns_index{
	display: flex;
	gap: 20px;
	margin: 20px auto;
	 justify-content: center;
	}
footer .link_index{
	display: flex;
	gap: 20px;
	}
footer .link_index li{
	flex: 1;
	}
footer .link_index a{
	border: 1px solid #eda700;
	background: #eda700;
	display: block;
	color: #000;
	text-align: center;
	}
footer .link_index a:hover{
	text-decoration: none;
	color: #eda700;
	background: #000;
	}

footer ul.about{
	margin: 20px auto;
	}
footer ul.about li{
	text-align: center;
	}

footer ul li{
	color: #eda700;
	font-size: 1.6rem;
	line-height: 2.4rem;
	}




/* -------------------------------------- /PCとSmtの表示切替え
*/
footer ul.subMenu li:nth-child(1) > a:nth-child(3),
footer ul.subMenu li:nth-child(1) > a:nth-child(4),
footer ul.subMenu li:nth-child(2) > a:nth-child(5),
footer ul.subMenu li:nth-child(2) > a:nth-child(6),
footer ul.subMenu li:nth-child(2) > .wrap_sns{
	display: none;
	}

@media (max-width: 768px) {
	footer ul.subMenu li:nth-child(2) > a:nth-child(1),
	footer ul.subMenu li:nth-child(2) > a:nth-child(2),
	footer ul.subMenu li:nth-child(3){
		display: none;
		}
	footer ul.subMenu li:nth-child(1) a:nth-child(3),
	footer ul.subMenu li:nth-child(1) a:nth-child(4),
	footer ul.subMenu li:nth-child(2) a:nth-child(5),
	footer ul.subMenu li:nth-child(2) a:nth-child(6),
	footer ul.subMenu li:nth-child(2) .wrap_sns{
		display: block;
		}
}
/* -------------------------------------- /PCとSmtの表示切替え
*/

footer ul.subMenu li img{
	position: absolute;
	left: 0;
	top:1px;
	}

footer ul.subMenu div.wrap_sns a{
	display: inline-block;
	}
footer ul.subMenu div.wrap_sns img{
	width: 28px;
	}
footer .footerMenu{
	border-top:1px solid #D4D4D4;
	}
footer .footerMenu ul{
	display: flex;
	align-items:center;
	gap: 40px;
	padding: 20px 0 0 0;
	margin: 0 auto 80px auto;
	}
footer .footerMenu ul li{
	list-style: none;
	font-size: 1.4rem;
	line-height: 3.2rem;
	padding: 0;
	}

footer .btn_pageup{
	width: auto;
	text-align: right;
	margin: 0 0 20px 0;
	}
footer .btn_pageup img{
	width: 63px;
	}

a.btn_up{
	position: fixed;
	bottom: 10px;
	right: 10px;
	}
a.btn_up img{
	width: 40px;	
	}

.fade-text {
		/* グラデーションを設定 */
		background: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
		/* グラデーションをテキストのみに適用 */
		-webkit-background-clip: text;
		background-clip: text;
		/* テキストの色を透明に設定 */
		color: transparent;
	}
/* -------------------------------------- /half_block / half_block2
*/
ul.half_block,
ul.half_block2{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	}
ul.half_block2{
	align-items:flex-start;
	background: #fff;
	}

ul.half_block li{
	width: calc(100% / 2);
	}
ul.half_block2 li:nth-child(2n+1){
	width: 440px;
	}
ul.half_block2 li:nth-child(2n){
	width: calc(100% - 440px);
	}

ul.half_block li img,
ul.half_block2 li img{
	width: 100%;
	}
ul.half_block li div.inner_half_block{
	padding: 40px;
	}
ul.half_block2 li div.inner_half_block{
	padding: 30px 30px;
	text-align: left;
	}

ul.half_block li div.inner_half_block h2,
ul.half_block2 li div.inner_half_block h2{
	font-size: 2.4rem;
	line-height: 3.5rem;
	color: #2F3893;
	font-weight: normal;
	margin-bottom: 45px;
	}
ul.half_block2 li div.inner_half_block h2{
	font-size: 2.0rem;
	margin-bottom: 20px;
	}

ul.half_block li div.inner_half_block p,
ul.half_block2 li div.inner_half_block p{
	font-size: 1.6rem;
	line-height: 3.7rem;
    margin: 0;
    padding: 0;
	margin-bottom: 45px
	}
ul.half_block2 li div.inner_half_block p{
	font-size: 1.4rem;
	line-height: 2.4rem;
	margin-bottom: 40px;
	}

ul.half_block:nth-child(2n),
ul.half_block2:nth-child(2n+1) {
    flex-direction: row-reverse; /* 2番目の行を逆順に配置 */
  }

@media (min-width: 1300px) {

ul.half_block li:nth-child(2n) div.inner_half_block{
	padding-right: calc(100% - 650px);
	}
ul.half_block:nth-child(2n) li:nth-child(2n) div.inner_half_block{
	padding-right:40px;
	padding-left: calc(100% - 650px);
	}
}
@media (max-width: 768px) {

ul.half_block{
	display: block;
	}
ul.half_block li{
	width: auto;
	}

}


/* -------------------------------------- /center_block
*/
.center_block{
	text-align: center!important;
	}


/*
		
	-------- smt_menu ----------------------------------------------------------------------- ----------------------------------------------------------------------- -----------------------------------------------------------------------
	
*/
#underheader{
	height: 90px;
	}

body.lock{
	overflow: hidden;
	}

.smt_menu{
	display: none;
	width: 320px;
	height: 100vh;
	position: fixed;
	top:0;
	right: 0;
	background-color: #fff;
	z-index: 1000;
	text-align: center;
	margin: 0;
	margin-right: -330px;
	padding: 0;
	overflow: scroll;
	}
.smt_menu h1{
	width: 72px;
	margin: 24px;
	}
.smt_menu h1 img{
	max-width: 100%;
	}

.smt_menu ul.mainMenu{
	margin: 0; padding: 0;
	}
.smt_menu ul.mainMenu li{
	list-style: none;
	margin: 0; padding: 0;
	}
.smt_menu ul.mainMenu li a{
	color: #393636;
	display: block;
	padding: 10px 0;
	}

.smt_menu.open,
.smt_menu.open .close_btn{
		animation-name: smt_menu_open;
		animation-duration: 0.5s;
		animation-iteration-count: 1;
		animation-fill-mode:forwards;
	}
.smt_menu.open .close_btn{
	display: block;
	right: 5px;
    top: 10px;
	}

@keyframes smt_menu_open {
		0%{
			margin-right: -310px;
		}
		100%{
			margin-right: 0;
		}
	}

.smt_menu.open img.logo{
	width: 100px;
	display: block;
	margin:40px auto;
	}
.smt_menu.open ul{
	padding: 10px 40px;
	margin: 0 auto;
	}
.smt_menu.open ul li,
.smt_menu.open strong{
	text-align: left;
	font-size: 1.6rem;
	line-height: 3.0rem;
	}
.smt_menu.open strong{
	padding: 0 40px;
	display: block;
	}


ul.wrap_bigbanner{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	gap:80px;
	}
ul.wrap_bigbanner > li{
	text-align: left;
	}
ul.wrap_bigbanner > li:nth-child(1){
	background: #fff;
	width: 540px;
	}
ul.wrap_bigbanner > li:nth-child(2){
	width: calc(100% - 540px - 80px - 50px);
	padding-right: 50px;
	}

ul.wrap_navinfo{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	gap:1px;
	}
ul.wrap_navinfo.smt{
	display: none;
	}
ul.wrap_navinfo > li{
	background: #393636;
	width: calc((100% - 1px) / 2);
	font-size: 1.5rem;
	line-height: 2.4rem;
	text-align: center;
	padding: 20px 0 30px 0;
	}
ul.wrap_navinfo > li a{
	color: #fff;
	}
ul.wrap_navinfo > li img{
	display: block;
	margin: 0 auto 20px auto;
	width: 48px;
	}

ul.wrap_navbanner{
	display: flex;
	flex-wrap: wrap;
	margin: 20px auto;
	padding: 0;
	gap: 20px;
	align-items:center;
	justify-content: center;
	}
ul.wrap_navbanner li{
	/*width: calc((100% - 24px) / 2);*/
	text-align: center;
	background: #F5F5F5;
	border-radius: 10px;
	padding: 20px;
	font-size: 1.5rem;
	line-height: 2.4rem;
	}
.no_link{
	pointer-events: none;
	opacity: 0.5;
	}

ul.wrap_navbanner > li img{
	width: 148px;
	}
ul.wrap_navbanner li strong{
	display: block;
	font-size: 1.5rem;
	line-height: 2.4rem;
	color: #fff;
	border-radius: 4px;
	padding: 5px 0;
	margin-bottom: 10px;
	}
ul.wrap_navbanner li:nth-child(1) strong{ background: #EA5446;}
ul.wrap_navbanner li:nth-child(2) strong{ background: #1D2088;}
ul.wrap_navbanner li:nth-child(3) strong{ background: #3496AF;}
ul.wrap_navbanner li:nth-child(4) strong{ background: #393636;}

ul.wrap_nav_smart{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	gap:30px;
	}
ul.wrap_nav_smart > li{
	width: calc((100% - 30px) / 2);
	}
ul.wrap_nav_smart > li:nth-child(1){
	width: 100%;
	}

ul.wrap_nav_smart > li,
ul.wrap_nav_smart > li h2,
ul.wrap_nav_smart > li h2 a{
	font-size: 1.8rem;
	line-height: 2.4rem;
	color: #EA5446;
	}

*/
/*　--------------------------------------------------------------------------------
*/


ul.wrap_nav_smart > li h2{
	border-bottom: 1px solid #D6D6D6;
	padding-bottom: 10px;
	margin-bottom: 10px;
	position: relative;
	}
ul.wrap_nav_smart > li h2 img{
	width: 28px;
	position: absolute;
	top:0;
	right: 0;
	}
ul.wrap_nav_smart > li > ul{
	margin: 0;
	padding: 0;
	}
ul.wrap_nav_smart > li > ul > li,
ul.wrap_nav_smart > li > ul > li a{
	font-size: 1.3rem;
	line-height: 2.4rem;
	color: #393636;
	}

ul.wrap_nav_sns{
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0 0 0;
	padding: 0;
	gap:10px;
	}
ul.wrap_nav_sns li img{
	width: 35px;
	}
ul.wrap_nav_others{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	gap:5px 20px;
	}
ul.wrap_nav_others li{
	font-size: 1.1rem;
	line-height: 1.6rem;
	}
ul.wrap_nav_others a{
	text-decoration: underline;
	}


/*
========================= pages
*/

.wrap_ttl{
	width: calc(100% - 40px);
	max-width: 1100px;
	margin: 20px auto;
	display: flex;
	position: relative;
	}
.wrap_ttl h2,
section.fdb_block .wrap_ttl h2{
	font-size: 3.2rem;
	font-weight: 400;
	color: #2F3893;
	margin-bottom: 10px;
	max-width: 50%;
	}
.wrap_ttl .breadlist{
	display: flex;
	justify-content: flex-end;
	position: absolute;
	right: 0;
	top:0;
	bottom:0;
	margin: auto;
	height: 1.2rem;
	　
	}
.wrap_ttl .breadlist li{
	font-size: 1.2rem;
	line-height: 1.2rem;
	}
.wrap_ttl .breadlist li a{
	color: #58AEA2;
	}
.wrap_ttl .breadlist li:after{
	content: "▲";
	display: inline-block;
	margin: 0 5px;
	transform: rotate(90deg); 
	font-size: 1.0rem;
	color: #D4D4D4;
	}
.wrap_ttl .breadlist li:last-child:after{
	content: none;
	}

.content_body .mainvis{
	
	}
.content_body .mainvis img{
	width: 100%;
	}

.content_body .tex_block{
	width: calc(100% - 120px);
	max-width: 940px;
	margin: 0 auto;
	border-bottom: 1px solid #707070;
	padding-top:80px;
	text-align: center;
	}
.content_body .tex_block:first-child{
	padding-top:0;
	}
.content_body .tex_block:last-child{
	border-bottom: none;
	}
.content_body .tex_block.no_border{
	border-bottom: none;
	margin-bottom: 40px;
	}

.content_body .tex_block h3{
    font-size: 3.0rem;
    line-height: 4.5rem;
	color: #2F3893;
	padding: 0;
	margin-bottom: 40px;
	text-align: left;
	}
.content_body .tex_block h3.tex_center{
	text-align: center;
	}
.content_body .tex_block h3 span{
	display: block;
    font-size: 1.8rem;
	color: #333333;
	}

.content_body .tex_block h4{
    font-size: 2.2rem;
    line-height: 3.8rem;
	padding: 0;
	text-align: left;
	}
.content_body .tex_block h4 span{
    font-size: 1.4rem;
	display: block;
	}

.content_body .tex_block p{
    font-size: 1.6rem;
    line-height: 3.7rem;
	padding: 0 0 80px 0;
	text-align: left;
	}
.content_body .tex_block p.tex_center{
	text-align: center;
	}
.content_body .tex_block p.tex_small{
    font-size: 1.3rem;
	}


.content_body .tex_block .wrap_flex{
	display: flex;
	gap: 40px;
	margin-bottom: 40px;
	align-items: flex-start;
	}

.content_body .tex_block ol.List_1st_column,
.content_body .tex_block ol.List_2nd_column{
	width: calc((100% - 10px) / 2);
	margin: 0;
	padding: 0;
	}
.content_body .tex_block ol.List_1st_column li,
.content_body .tex_block ol.List_2nd_column li{
	position: relative;
	min-height: 60px;
	padding-left: 34px;
	text-align: left;
	margin-bottom: 40px;
	}
.content_body .tex_block ol.List_1st_column li:before,
.content_body .tex_block ol.List_2nd_column li:before{
	font-size: 4.0rem;
	position: absolute;
	left: 0;
	top:-10px;
	color: #323893;
	}

.content_body .tex_block ol.List_1st_column{}
	.content_body .tex_block ol.List_1st_column li:nth-child(1):before{ content: "1"; }
	.content_body .tex_block ol.List_1st_column li:nth-child(2):before{ content: "2"; }
	.content_body .tex_block ol.List_1st_column li:nth-child(3):before{ content: "3"; }
	.content_body .tex_block ol.List_1st_column li:nth-child(4):before{ content: "4"; }
.content_body .tex_block ol.List_2nd_column{}
	.content_body .tex_block ol.List_2nd_column li:nth-child(1):before{ content: "5"; }
	.content_body .tex_block ol.List_2nd_column li:nth-child(2):before{ content: "6"; }
	.content_body .tex_block ol.List_2nd_column li:nth-child(3):before{ content: "7"; }
	.content_body .tex_block ol.List_2nd_column li:nth-child(4):before{ content: "8"; }

.content_body .tex_block ol.List_1st_column li strong,
.content_body .tex_block ol.List_2nd_column li strong{
	display: block;
	font-size: 2.8rem;
	color: #323893;
	margin-bottom: 10px;
	}
.content_body .tex_block ol.List_1st_column li span,
.content_body .tex_block ol.List_2nd_column li span{
	display: block;
	font-size: 1.4rem;
	}

.content_body .tex_block .wrap_sinkpia.wrap_flex{ /*シンクピア用*/
	flex-wrap: wrap;
	gap: 40px;
	}
.content_body .tex_block .wrap_sinkpia.wrap_flex div.tex,
.content_body .tex_block .wrap_sinkpia.wrap_flex div.center_block{
	width: calc((100% - 40px) / 2)
	}
.content_body .tex_block .bg_pale_blue.wrap_flex div.tex h3,
.content_body .tex_block .bg_pale_blue.wrap_flex div.tex h4,
.content_body .tex_block .bg_pale_blue.wrap_flex div.tex p{
	padding-left: 0;
	padding-right: 0;
	}

.content_body .tex_block h4.subttl,
.content_body .tex_block .wrap_sinkpia.wrap_flex div.tex h3{
	border-left: 2px solid #B9B9B9;
	padding-left:20px;
	margin-bottom: 40px;
	}
.content_body .tex_block h4.subttl{
	color: #007DC1;
	}
.content_body .tex_block h4.subttl span{
	display: inline-block;
	margin-left: 20px;
	font-size: 1.3rem;
	color: #333333;
	}
/*
 ============ #page_recycle
*/
#page_recycle .content_body .tex_block p.ttl{
    font-size: 2.4rem;
    font-weight: 400;
    padding: 0;
    line-height: 2.4rem;
	}

.content_body .tex_block .fig_food_recycle.wrap_flex{
	flex-wrap: wrap;
	gap: 20px;
	align-items: center;
	margin-bottom: 0;
	}
.content_body .tex_block .fig_food_recycle.wrap_flex div.tex{
	width: 350px;
	}
.content_body .tex_block .fig_food_recycle.wrap_flex div.tex img,
.content_body .tex_block .fig_food_recycle.wrap_flex div.vis img{
	width: 100%;
	}
.content_body .tex_block .fig_food_recycle.wrap_flex div.tex img{
	max-width: 250px;
	display: block;
	margin: 20px auto;
	}
.content_body .tex_block .fig_food_recycle.wrap_flex div.tex h3{
	font-size: 2.6rem;
	}
.content_body .tex_block .fig_food_recycle.wrap_flex div.tex p{
	padding-bottom: 0;
	}

.content_body .tex_block .fig_food_recycle.wrap_flex div.vis{
	width: calc(100% - 370px);
	}

.content_body .tex_block .fig_feeding h3{
	padding: 0;
	margin-bottom: 20px;
	color: #007DC1;
	font-size: 2.8rem;
	}
.content_body .tex_block .fig_feeding .wrap_flex{
	flex-wrap: wrap;
	gap: 20px;
	align-items: center;
	margin-bottom: 0;
	}
.content_body .tex_block .fig_feeding .wrap_flex .vis{
	width: 500px;
	}
.content_body .tex_block .fig_feeding .wrap_flex .tex{
	width: calc(100% - 520px);
	}
.content_body .tex_block .fig_feeding .wrap_flex .tex p{
	padding: 0;
	}

.content_body .tex_block ul.wrap_flex li h5{
    font-size: 1.6rem;
    line-height: 3.7rem;
	}

/*
======================= business_Detail
*/
.content_body .tex_block .wrap_flex.index5column.business_index li{
	font-size: 1.2rem;
	margin-bottom: 20px;
	}
.content_body .tex_block .wrap_flex.index5column.business_index li.current{
	display: none;
	}

.wrap_business_detail{
	background: #F0F4F8;
	padding: 40px 20px;
	text-align: center;
	}
.wrap_business_detail h3{
	text-align: center;
	font-size: 2.8rem;
	margin-bottom: 80px;
	}
.wrap_business_detail .half_block2{
	max-width: 1100px;
	margin: 0 auto 80px auto;
	align-items: center;
	}

.wrap_business_detail .half_block2 a.btn_normal{
	background: #fff;
	font-size: 1.3rem;
	color: #2F3893;
	line-height: 30px;
	height: 30px;
	padding: 5px 40px;
	min-width: auto;
	}
.wrap_business_detail .half_block2 a.btn_normal:hover{
	background: #2F3893;
	color: #fff;
		}
.wrap_business_detail > a.btn_normal{
	margin-bottom: 80px;
	}
ul.half_block2:nth-child(2n){
	border-top-right-radius: 20px;
	border-bottom-right-radius: 20px;
	}
ul.half_block2:nth-child(2n+1){
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
	}

/*
======================= wrap_youtube
*/
.wrap_youtube{
	width: calc(100% - 40px);
	max-width: 800px;
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%; /* 16:9のアスペクト比 */
	margin: 0 auto;
	}
.wrap_youtube iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	}

/*
======================= Column rayout
*/
.content_body .tex_block .wrap_flex.index2column,
.content_body .tex_block .wrap_flex.index3column,
.content_body .tex_block .wrap_flex.index4column,
.content_body .tex_block .wrap_flex.index5column,
.content_body .tex_block .wrap_flex.index6column{
	flex-wrap: wrap;
	gap:20px;
	}
.content_body .tex_block .wrap_flex.index5column,
.content_body .tex_block .wrap_flex.index6column{
	gap:10px;
	}
.content_body .tex_block .wrap_flex.index2column li img,
.content_body .tex_block .wrap_flex.index3column li img,
.content_body .tex_block .wrap_flex.index4column li img,
.content_body .tex_block .wrap_flex.index5column li img,
.content_body .tex_block .wrap_flex.index6column li img{
	display: inline-block;
	margin-bottom: 10px;
	}
.content_body .tex_block .wrap_flex.index2column li,
.content_body .tex_block .wrap_flex.index3column li,
.content_body .tex_block .wrap_flex.index4column li,
.content_body .tex_block .wrap_flex.index5column li,
.content_body .tex_block .wrap_flex.index6column li{
	font-size: 1.6rem;
	}
.content_body .tex_block .wrap_flex.index2column li{
	width: calc((100% - 20px) / 2);
	}
.content_body .tex_block .wrap_flex.index2column  .wrap_flex.index2column li{
	font-size: 1.2rem;
	}
.content_body .tex_block .wrap_flex.index2column  .wrap_flex.index2column li img{
	width: 100%;
	}

.content_body .tex_block .wrap_flex.index3column li{
	width: calc((100% - 40px) / 3);
	}
.content_body .tex_block .wrap_flex.index4column li{
	width: calc((100% - 60px) / 4);
	}
.content_body .tex_block .wrap_flex.index5column li{
	width: calc((100% - 40px) / 5);
	}
.content_body .tex_block .wrap_flex.index6column li{
	width: calc((100% - 50px) / 6);
	}
/*
======================= page_carbon_neutral
*/
.content_body .tex_block .wrap_flex.list_vis_carbon_neutral{
	gap: 10px;
	}
/*
======================= page_consulting
*/
.consulting_index{
	max-width: 600px;
	margin-top: 40px;
	}
.content_body .tex_block .wrap_flex.index3column.consulting_index li{
	font-size: 1.2rem;
	line-height: 2.0rem;
	margin-bottom: 10px;
	}
.content_body .tex_block .wrap_flex.index3column.consulting_index li img{
	border: 1px solid #707070;
	}

/*
======================= wrap_certificate
*/
.wrap_certificate p img{
	display: inline-block;
	margin-right: 5px;
	}
.wrap_certificate p{
display: flex;
	align-items: center;
	flex-wrap: wrap;
	text-align: left;
	}
.wrap_certificate p a{
	width: 100%;
	}

.wrap_certificate{
	margin-bottom: 40px;
	}

.wrap_certificate table{
	width:100%;
	}
.wrap_certificate table,
.wrap_certificate table th,
.wrap_certificate table td{
	border-collapse: collapse;
    border:1px solid #333!important;
	}
.wrap_certificate table th,
.wrap_certificate table td{
	padding: 5px 10px;
	text-align: center;
	font-size: 1.4rem;
	}
.wrap_certificate table th,
.wrap_certificate table.fdt_tables tr:first-child td{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	padding: 10px;
	font-weight: normal;
    vertical-align: middle;
	background: #F5F5F5;
	}

.wrap_certificate table td{
	text-align: left;
	}
.wrap_certificate table td:nth-child(1){
	min-width: 100px;
	}
.wrap_certificate.table4col,
.wrap_certificate.table5col,
.wrap_certificate.table19col{
    width: calc(100% - 120px);
    max-width: 940px!important;
    margin-right: auto;
    margin-left: auto;
	margin-bottom:40px;
	padding: 0;
	}
.wrap_certificate.table4col table td,
.wrap_certificate.table4col table.fdt_tables td{
	text-align: center;
	}
.wrap_certificate.table5col table.fdt_tables td,
.wrap_certificate.table19col table.fdt_tables td{
	text-align: center;
	}
.wrap_certificate.table4col table td:nth-child(1),
.wrap_certificate.table4col table.fdt_tables td:nth-child(1),
.wrap_certificate.table5col table.fdt_tables td:nth-child(1),
.wrap_certificate.table19col table.fdt_tables td:nth-child(1){
	width: 150px;
	}
.wrap_certificate.table4col table td:nth-child(2),
.wrap_certificate.table4col table td:nth-child(3),
.wrap_certificate.table4col table.fdt_tables td:nth-child(2),
.wrap_certificate.table4col table.fdt_tables td:nth-child(3),
.wrap_certificate.table5col table.fdt_tables td:nth-child(2),
.wrap_certificate.table5col table.fdt_tables td:nth-child(3),
.wrap_certificate.table5col table.fdt_tables td:nth-child(4){
	width: 50px;
	}
.wrap_certificate.table19col table.fdt_tables td:nth-child(4),
.wrap_certificate.table19col table.fdt_tables td:nth-child(5){
	font-size: 1.2rem;
	}
.wrap_certificate.table5col table.fdt_tables td:nth-child(5){
	text-align: left;
	}
.wrap_certificate.table19col table.fdt_tables td:nth-child(5){
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
    vertical-align: middle;
	}
section.fdb_block .wrap_certificate .fdt_ul_caution li{
	margin-left: 0;
	font-size: 1.3rem;
	}
section.fdb_block .wrap_certificate .fdt_ul_caution li:before{
	display: none;
	}

.wrap_certificate p a{
	font-size: 1.4rem;
	display: flex;
	align-items: center;
	}
.wrap_certificate table td ol{
	margin: 10px 0 0 20px;
	padding: 0;
	}
.wrap_certificate table td ol li{
	list-style-type: decimal;
	}


@media (max-width: 768px) {
section.fdb_block .wrap_certificate{
	overflow-x: auto;
	}

section.fdb_block .wrap_certificate table.fdt_tables{
	display: table!important;
	width: auto;

	max-width: none;
	border-collapse: collapse;
	}

section.fdb_block .wrap_certificate table.fdt_tables tr{
	display: table-row!important;
	position: relative;
	}
section.fdb_block .wrap_certificate table.fdt_tables th,
section.fdb_block .wrap_certificate table.fdt_tables td{
	display: table-cell;
	}
.wrap_certificate.table19col table.fdt_tables td:nth-child(1){
	width: 100px!important;
	}
}

/*
======================= wrap_related_links
*/


.content_body .tex_block .wrap_flex.wrap_related_links{
	flex-wrap: wrap;
	gap: 40px;
	margin-bottom: 80px;
	}
.content_body .tex_block .wrap_related_links h3{
	font-size: 2.2rem;
	width: 200px;
	}
.wrap_related_links ul{
	width: calc(100% - 200px - 40px);
	border-bottom:1px solid #B1B1B1;
	}

.wrap_related_links li{
	border-top:1px solid #B1B1B1;
	font-size: 1.4rem;
	line-height: 1.4rem;
	}
.wrap_related_links li span{
	display: inline-block;
	width: 300px;
	}
.wrap_related_links li a{
	display: block;
	padding: 20px 0;
	text-align: left;
	}
.wrap_related_links li a:hover{
	text-decoration: none;
	}

/*
======================= recruit
*/

.content_body .tex_block.recruit_main{
	background: #2F3893;
	max-width: none;
	width: 100%;
	padding-top: 40px;
	padding-bottom: 40px;
	}
.content_body .tex_block.recruit_main img{
	width: 100%;
	max-width: 940px;
	}
.content_body .tex_block.recruit_main h2{
	color: #fff;
	margin-top: 40px;
    font-size: 3.0rem;
	}

.content_body .tex_block.recruit_main .wrap_ttl .breadlist li,
.content_body .tex_block.recruit_main .wrap_ttl .breadlist li a,
.content_body .tex_block.recruit_main .wrap_ttl .breadlist li:after{
	color: #fff;
	}

/*
recruit_index
*/
.content_body .tex_block.wrap_recruit_index,
.content_body .tex_block.wrap_recruit_index  .tex_block{
	width: 100%;
	}
section.fdb_block .recruit_index .fdt_ul_text{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	}
.content_body .tex_block .wrap_flex.recruit_index,
section.fdb_block .recruit_index .fdt_ul_text{
	justify-content: center;
	}
.content_body .tex_block .wrap_flex.recruit_index li,
section.fdb_block .recruit_index .fdt_ul_text li{
	border: 1px solid #323893;
	margin: -1px;
	width: calc((100% - 40px) / 3);
	font-weight: bold;
	}
section.fdb_block .recruit_index .fdt_ul_text li:before{
	content: none;	
	}

.content_body .tex_block .wrap_flex.recruit_index li span,
section.fdb_block .recruit_index .fdt_ul_text li span{
	display: block;
	}
section.fdb_block .recruit_index .fdt_ul_text li strong{
	font-weight: normal;
	}
.content_body .tex_block .wrap_flex.recruit_index li,
.content_body .tex_block .wrap_flex.recruit_index li a,
section.fdb_block .recruit_index .fdt_ul_text li,
section.fdb_block .recruit_index .fdt_ul_text li a{
	color: #333;
	text-decoration: none;
	line-height: 3.0rem;
	}
.content_body .tex_block .wrap_flex.recruit_index li a,
section.fdb_block .recruit_index .fdt_ul_text li a{
	display: block;
	padding: 10px 0;
	}
.content_body .tex_block .wrap_flex.recruit_index li a:hover,
section.fdb_block .recruit_index .fdt_ul_text li a:hover{
	background: #323893;
	color: #fff;
	}
.content_body ul.recruit_info{
	border-top: 1px solid #C5C5C5;
	padding-top: 20px;
	}
.content_body ul.recruit_info li{
	display: flex;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #C5C5C5;
	}
.content_body ul.recruit_info span,
.content_body ul.recruit_info p{
	font-size: 1.6rem;
	line-height: 3.0rem;
	}

.content_body ul.recruit_info span{
	display: block;
	width: 150px;
	}
.content_body ul.recruit_info p{
	width: calc(100% - 150px);
	margin: 0;
	padding: 0;
	}
.content_body .tex_block.recruit_apeal h3{
	font-size: 6.0rem;
	line-height: 9.6rem;
	display: flex;
	align-items: center;
	gap: 20px;
	}
.content_body .tex_block.recruit_apeal h3 span{
	font-size: 1.8rem;
	color: #323893;
	font-weight: normal;
	}
.content_body .tex_block.recruit_apeal p{
	max-width: 600px;
	margin: 0 auto;
	}
.content_body .tex_block.recruit_apeal p strong.tex_center{
	font-size: 2.8rem;
	line-height: 5.4rem;
	display: block;
	margin-bottom: 40px;
	text-align: center;
	}

.content_body .tex_block.recruit_apeal .index2column h4{
	font-size: 1.8rem;
	line-height: 3.5rem;
	color: #fff;
	background: #323893;
	text-align: center;
	margin-bottom: 20px;
	}
.content_body .tex_block.recruit_apeal .index2column strong{
	font-size: 1.8rem;
	line-height: 3.5rem;
	display: block;
	text-align: left;
	font-weight: 400;
	margin-bottom: 20px;
	}
.content_body .tex_block.recruit_apeal .index2column .index3column{
	text-align: left;
	} 
.content_body .tex_block.recruit_apeal .index2column p{
	padding-bottom: 0;
	}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways{

	}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways li:nth-child(1) h4{ background: #323893;}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways li:nth-child(2) h4{ background: #539BC6;}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways li:nth-child(3) h4{ background: #509D69;}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways li:nth-child(4) h4{ background: #2F9A8C;}

.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways p{
    font-size: 1.4rem;
    line-height: 2.4rem;
	padding-bottom: 0;
	}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways p strong.name{
	display: block;
    font-size: 1.6rem;
    padding-bottom: 10px;
	}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways p strong.name span{
	display: block;
    font-weight: normal;
    font-size: 1.3rem;
    line-height: 1.6rem;
	}

.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways p strong{
    font-size: 1.4rem;
    line-height: 2.4rem;
	font-weight: bold;
	margin-bottom: 0;
	display: inline-block;
	}

.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways .wrap_flex{
    align-items: flex-start;
	gap: 10px;
	margin-bottom: 0;
	}
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways .wrap_flex img{
	width: 150px;
	}
.content_body .tex_block.recruit_apeal.block_enjoy{

	}
.content_body .tex_block.recruit_apeal.block_enjoy > img{
	margin-bottom: 60px;
	display: block;
	}
.content_body .tex_block.recruit_apeal.block_enjoy ul{
	margin-bottom: 80px;
	}
.content_body .tex_block.recruit_apeal.block_enjoy li{
    display: flex;
    gap: 20px;
	align-items: flex-start;
	margin-bottom: 40px;
	}
.content_body .tex_block.recruit_apeal.block_enjoy  li img{
	width: 350px;
	}
.content_body .tex_block.recruit_apeal.block_enjoy li div.tex{
	width: calc(100% - 350px - 20px);
	}
.content_body .tex_block.recruit_apeal.block_enjoy p{
	padding-bottom: 10px;
	font-size: 1.6rem;
    line-height: 3.0rem;
	}
.content_body .tex_block.recruit_apeal.block_enjoy p strong{
	display: block;
	font-size: 1.8rem;
	padding-bottom: 10px;
	}
.content_body .tex_block.recruit_apeal.block_enjoy p strong span{
	display: block;
	font-weight: normal;
	font-size: 1.6rem;
    line-height: 1.6rem;
	}

.content_body .tex_block.recruit_apeal.block_enjoy  li:nth-child(even) {
  /* 偶数番目のliはフローを逆転（右に画像、左にテキスト） */
  flex-direction: row-reverse; /* Flexbox の方向を逆にする */
  }

dl.recruit_guidelines,
dl.recruit_guidelines dt,
dl.recruit_guidelines dd{
	margin: 0;
	padding: 0;
	}
dl.recruit_guidelines dt,
dl.recruit_guidelines dd{
	margin-bottom: 20px;
	}

dl.recruit_guidelines{
	width: calc(100% - 120px);
    max-width: 940px;
    margin: 0 auto;
	font-size: 1.6rem;
	line-height: 2.8rem;
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	border-top:1px solid #707070;
	margin-top: 40px;
	padding-top:80px;
	}
dl.recruit_guidelines.no_border{
	border-top:none;
	margin-top: 0;
	}

dl.recruit_guidelines dt{
	width: 140px;
	}
dl.recruit_guidelines dd{
	width: calc(100% - 140px - 20px);
	}
dl.recruit_guidelines dd strong{
	font-size: 3.0rem;
	line-height: 4.0rem;
	display: block;
	font-weight: normal;
	margin-bottom: 20px;
	}
dl.recruit_guidelines dd strong span{
	display: block;
	font-size: 2.4rem;
	}
dl.recruit_guidelines dd.wrap_btn_recruit{
	width: 100%;
    text-align: center;
	margin-top: 30px;
	}
a.btn_recruit{
	background: red;
	padding: 0 10px;
	text-align: center;
	min-width: 300px;
	color: #fff;
	font-size: 2.0rem;
	line-height: 40px;
	border-radius: 25px;
	display: inline-block;
	}
dl.recruit_guidelines dd.wrap_btn_recruit input[type="submit"]{
    display: inline-block;
    margin: 0 auto;
    padding: 5px 60px;
    text-align: center;
    margin: 10px auto;
    min-width: 200px;
    font-size: 1.8rem;
    line-height: 40px;
    height: 50px;
    border-radius: 40px;
    border: 1px solid #2F3893;
    font-weight: 600;
    background: #2F3893;
    color: #fff;
    margin-left: 10px;
    margin-right: 10px;
	}
dl.recruit_guidelines dd.wrap_btn_recruit input[type="submit"]:hover{
	color: #323893;
	background: #fff;
	}

section.fdb_block .fdt_innner.recruit_guidelines{
	width: calc(100% - 40px);
	max-width: 900px;
	border-top: 1px solid #707070;
	padding-top: 40px;
	margin: 0 auto;
	}
section.fdb_block .fdt_innner.recruit_guidelines:first-child{
	border: none;
	}

section.fdb_block .recruit_guidelines table.fdt_tables,
section.fdb_block .recruit_guidelines table.fdt_tables tr,
section.fdb_block .recruit_guidelines table.fdt_tables th,
section.fdb_block .recruit_guidelines table.fdt_tables td{
	border: none;
	}
section.fdb_block .recruit_guidelines table.fdt_tables{
	width: auto;
	max-width: 900px;
	margin: 40px auto;
	}
section.fdb_block .recruit_guidelines table.fdt_tables tr{
	
	}
section.fdb_block .recruit_guidelines table.fdt_tables td{
	vertical-align: top;
	padding-bottom: 20px;
	}
section.fdb_block .recruit_guidelines table.fdt_tables td:first-child{
	width: 140px;
	}
section.fdb_block .recruit_guidelines table.fdt_tables td strong {
	font-size: 3.0rem;
	line-height: 4.0rem;
	display: block;
	font-weight: normal;
	margin-bottom: 20px;
	}
section.fdb_block .recruit_guidelines table.fdt_tables td strong span {
    display: block;
    font-size: 2.4rem;
	}
.wrap_btn_recruit{
	text-align: center;
	margin-bottom: 40px;
	}
.wrap_btn_recruit input[type="submit"] {
    display: inline-block;
    margin: 0 auto;
    padding: 5px 60px;
    text-align: center;
    margin: 10px auto;
    min-width: 200px;
    font-size: 1.8rem;
    line-height: 40px;
    height: 50px;
    border-radius: 40px;
    border: 1px solid #2F3893;
    font-weight: 600;
    background: #2F3893;
    color: #fff;
    margin-left: 10px;
    margin-right: 10px;
	}

@media (max-width: 768px) {
section.fdb_block .fdt_innner.recruit_guidelines{
	padding-top: 0;
	border:1px solid #707070;
	}
section.fdb_block .recruit_guidelines table.fdt_tables{
	margin: 0 auto;
	}
section.fdb_block .recruit_guidelines table.fdt_tables td,
section.fdb_block .recruit_guidelines table.fdt_tables td:first-child{
	width: auto;
	padding: 15px;
	}
section.fdb_block .recruit_guidelines table.fdt_tables tr:nth-child(2n+1) td{
	background: #eee;
	}

}



dl.wrap_company_profile,
dl.wrap_company_profile dt,
dl.wrap_company_profile dd{
	font-size: 1.6rem;
	line-height: 3.0rem;
	vertical-align: top;
	text-align: left;
	margin: 0;
	padding: 0;
	}
dl.wrap_company_profile dt,
dl.wrap_company_profile dd{
	margin-bottom: 40px;
	}

dl.wrap_company_profile{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	}
dl.wrap_company_profile dt{
	width: 300px;
	font-size: 3.6rem;
	line-height: 5.2rem;
	color: #2F3893;
	font-weight: 600;
	}
dl.wrap_company_profile dd{
	width: calc(100% - 300px - 20px);
	}
dl.wrap_company_profile dd ol,
dl.wrap_company_profile dd ol li{
	margin: 0;
	padding: 0;
	}
dl.wrap_company_profile dd ol{
	margin-left: 3.6rem;
	margin-bottom: 40px;
	}
dl.wrap_company_profile dd ol li{
	list-style-type: inherit;
	font-size: 3.1rem;
	line-height: 3.6rem;
	color: #2F3893;
	margin-bottom: 20px;
    padding-left: 20px;
	}
dl.wrap_company_profile dd p.tex_right{
	text-align: right;
	color: #2F3893;
	font-size: 2.0rem;
	padding-bottom: 0;
	}


table.company_profile_table,
section.fdb_block .company_profile_table table.fdt_tables{
	width: 100%;
	border-collapse: collapse;
	}
table.company_profile_table tr,
table.company_profile_table th,
table.company_profile_table td,
section.fdb_block .company_profile_table table.fdt_tables tr,
section.fdb_block .company_profile_table table.fdt_tables th,
section.fdb_block .company_profile_table table.fdt_tables td{
	font-size: 1.6rem;
	line-height: 3.2rem;
	vertical-align: top;
	margin: 0;
	padding: 0;
	text-align: left;
	}
table.company_profile_table tr,
section.fdb_block .company_profile_table table.fdt_tables tr{

	}
table.company_profile_table tr td,
section.fdb_block .company_profile_table table.fdt_tables tr td{
	padding-top: 20px;
	padding-bottom: 20px;
	border: none;
	border-top: 1px solid #B1B1B1;
	}
table.company_profile_table tr:nth-child(1) td,
section.fdb_block .company_profile_table table.fdt_tables tr:nth-child(1) td{
	border-top:none;
	}

table.company_profile_table tr td:nth-child(1),
section.fdb_block .company_profile_table table.fdt_tables tr td:nth-child(1){
	width:180px;
	}
table.company_profile_table td strong,
section.fdb_block .company_profile_table table.fdt_tables td strong{
	display: block;
	margin-top: 20px;
	}
table.company_profile_table td strong.large,
section.fdb_block .company_profile_table table.fdt_tables td strong.large{
	font-size: 2.0rem;
    line-height: 3.2rem;
	}

table.company_profile_table td strong:nth-child(1),
section.fdb_block .company_profile_table table.fdt_tables td strong:nth-child(1){
	margin-top: 0;
	}
.content_body .tex_block table.company_profile_table tr td p,
section.fdb_block .company_profile_table table.fdt_tables tr td p{
	margin-left: 20px;
	padding-bottom: 0;
	}

.wrap_history{
	padding: 20px 40px;
	background: #F5F5F5;
	margin-bottom: 40px;
	}
.wrap_history p.tex_right{
	text-align: right;
	display: block;
	padding: 0;
	}
ul.sustainability{

	}
ul.sustainability li{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
	margin-bottom: 20px;
	}
ul.sustainability li img:nth-child(1){
	width: 120px;
	}
ul.sustainability li p:nth-child(2){
	width:calc(100% - 120px - 320px - 60px );
	padding: 0;
	font-size: 1.4rem;
	line-height: 2.4rem;
	}

ul.sustainability li img:nth-child(3),
ul.sustainability li img:nth-child(4){
	width: 160px;
	}
/*
 ===================== #page_privacy_policy
*/
#page_privacy_policy{

	}
#page_privacy_policy h2{
	font-size: 2.4rem;
	line-height: 3.0rem;
	text-align: left;
	margin-bottom: 40px;
	}

#page_privacy_policy dl,
#page_privacy_policy dt,
#page_privacy_policy dd{
	text-align: left;
	font-size: 1.6rem;
	line-height: 3.0rem;
	margin: 0 0 10px 0;
	padding: 0;
	}
#page_privacy_policy dt{
	font-size: 2.0rem;
	line-height: 3.0rem;
	margin-bottom: 20px;
	}
#page_privacy_policy dd{
	margin-bottom: 40px;
	margin-left: 20px;
	}
#page_privacy_policy .tex_block ul{

	}
#page_privacy_policy .tex_block ul li{
	position: relative;
	padding-left: 20px;
	}
#page_privacy_policy .tex_block ul li:before{
	content: "・";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	}
#page_privacy_policy p.tex_right,
#page_environmental_policy p.tex_right{
	text-align: right;
	margin-top: 20px;
	}

/*
   =========== wrap_form
*/

.wrap_form{
	width: calc(100% - 40px);
	margin: 20px auto;
	max-width: 800px;
	margin-bottom: 80px;
	}
form#mailformpro dl,
form#mailformpro dl dd,
form#mailformpro dl dt{
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	line-height: 2.2rem;
	}
.mfp_colored{
	background-color: #fff;
	}

form#mailformpro dl dt,
form#mailformpro dl dd{
	border: none;
	}
form#mailformpro dl{
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	}
form#mailformpro dl dt{
	width: 200px;
	}
form#mailformpro dl dd{
	width: calc(100% - 220px);
	font-size: 1.2rem;
	}
form#mailformpro dl dd a{
	border: 1px solid #333;
	padding: 2px 10px;
	display: inline-block;
	margin-left: 10px;
	}
form#mailformpro dl dd a:hover{
	background: #333;
	color: #fff;
	}
form#mailformpro input[type="text"],
form#mailformpro input[type="email"],
form#mailformpro input[type="tel"],
form#mailformpro input[type="fax"],
form#mailformpro textarea
 {
	background: #F5F5F5;
	border: none;
	padding: 5px 10px;
	}
form#mailformpro span.must{
	background-color: #333;
    font-size: 9px;
    color: #fff;
    display: inline-block;
	margin: 0 5px 0 0;
    padding: 0px 5px;
    text-shadow: none;
    border-radius: 0;
    background-image: none;
    box-shadow: none;
	border: none;
	}
form#mailformpro ol,
form#mailformpro ol li{
	margin: 0;
	padding: 0;
	}
form#mailformpro ol li{
	margin-bottom: 5px;
	}
form#mailformpro label.mfp_not_checked{
	border: none;
	padding: 0;
	}

form#mailformpro .mfp_buttons{
	text-align: center;
	margin-top: 40px;
	}
form#mailformpro .mfp_buttons button{
	width: 200px;
	height: 50px;
	border-radius: 25px;
	background : none;
	display: inline-block;
	margin: 10px 10px;
	border:1px solid #333;
	}
form#mailformpro .mfp_buttons button:hover{
	background: #333;
	color: #fff;
	box-shadow: none;
	}


.wrap_flex.index3column.contact_index{
	gap: 20px;
	}
.wrap_flex.index3column.contact_index li img{
	display: block;
	width: 100%;
	}
.wrap_flex.index3column.contact_index li a{
	border: 3px solid #323893;
	display: block;
	background: #323893;
	color: #fff;
	padding-bottom: 10px
	}
.wrap_flex.index3column.contact_index li a:hover{
	background: #fff;
	color: #323893;
	text-decoration: none;
	}

#page_environmental_policy .content_body .tex_block ol{
	margin: 0 0 0 20px;;
	padding: 0;
	}
#page_environmental_policy .content_body .tex_block ol li{
	font-size: 1.6rem;
    line-height: 3.7rem;
    text-align: left;
	list-style-type: decimal;
	margin-bottom: 10px;
	}
/*
thanksページ
*/
.wrap_thanks{

	}
.content_body.wrap_thanks .tex_block p{
	
	}
.content_body.wrap_thanks .tex_block p strong{
	display: block;
	font-size: 2.6rem;
	font-weight: normal;
	}
.content_body.wrap_thanks .tex_block p strong span{

	font-size: 1.6rem;
	}
/*
ニュース
*/
.wrap_news{
	width: calc(100% - 120px);
    max-width: 940px;
    margin: 0 auto;
    border-bottom: 1px solid #707070;
    padding-top: 80px;
    text-align: center;
	}
.wrap_news h3{
	font-size: 2.2rem;
    line-height: 3.7rem;
	text-align: left;
	margin-bottom: 40px;
	}
.wrap_news div{
	text-align: left;
	}
.wrap_news p{
	font-size: 1.6rem;
    line-height: 3.7rem;
    padding: 0;
    text-align: left;
	}

.wrap_news .btn_news_index{
	margin-top: 80px;
	}
.wrap_news ul.news_index{
	margin-bottom: 40px;
	}
.wrap_news ul.news_index li p{
	padding: 0;
	margin: 0;
	}
.wrap_news ul.news_index li p span{
	display: inline-block;
	width: 100px;
	}


@media (max-width: 1180px) {

header{
	height: 64px;
	}
#underheader{
	height: 64px;
	}
header ul.mainMenu{
	align-items: flex-start;
	}
header ul.mainMenu li{
	/*display: none;*/
	}
header ul.mainMenu li:nth-child(1),
header ul.mainMenu li:nth-child(2),
header ul.mainMenu li:nth-child(3),
header ul.mainMenu li:nth-child(4),
header ul.mainMenu li:nth-last-child(4){
	display: none;
	}
header ul.mainMenu li.btn_smartmenu a{
	padding-top:0;
	}

header ul.mainMenu li.btn_smartmenu{
        display: block;
        margin-left: 0;
        width: 60px;
	}

header h1{
	top:4px;
	left:10px;
	}
header ul.subMenu li.btn_smartmenu{
	padding: 10px;
	}
header ul.subMenu li.btn_smartmenu img{
	width: 26px;
	}
header ul.subMenu li.btn_contact{
	padding: 0;
	}	
header ul.subMenu li.btn_contact a{
	width: 120px;
	font-size: 1.1rem;
	height: 3.0rem;
	line-height: 3.0rem;
	border-radius: 1.5rem;
	}

.smt_menu{
	display: block;
	}
.smt_menu h1{
	margin: 0 auto;
	width: calc(100% - 20px);
	text-align: left;
	padding: 20px 0;
	text-align: left;
	}
.smt_menu h1 img{
	width: 100px;
	}
.smt_menu ul.mainMenu{
	padding: 40px;
	}

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


ul.wrap_bigbanner{
	padding-bottom: 42px;
	}

ul.wrap_navbanner li{
	width: calc((100% - 120px ) / 2);
	}
ul.wrap_bigbanner > li:nth-child(1){
	width: 100%;
	}
ul.wrap_navbanner > li img{
	width: 100%;
	}
ul.wrap_bigbanner > li:nth-child(2){
	width: 100%;
	padding: 0;
	}

ul.wrap_nav_smart{
	display: block;
	width: calc(100% - 40px);
	margin: 0 auto;
	}
ul.wrap_nav_smart > li:nth-child(1),
ul.wrap_nav_smart > li{
	width: 100%;
	}

ul.wrap_nav_smart > li,
ul.wrap_nav_smart > li h2,
ul.wrap_nav_smart > li h2 a{
	font-size: 1.8rem;
	line-height: 3.0rem;
	font-weight: 600;
	}
ul.wrap_nav_smart > li > ul{
	margin-bottom: 20px;
	}
ul.wrap_nav_smart > li > ul > li,
ul.wrap_nav_smart > li > ul > li a{
	font-size: 1.4rem;
	line-height: 3.0rem;
	}
ul.wrap_navbanner li{
	font-size: 1.2rem;
	line-height: 1.8rem;
	padding: 10px;
	}

ul.wrap_nav_sns,
ul.wrap_nav_others{
	padding: 0 20px;
	}
ul.wrap_nav_others{
	display: block;
	margin-top: 40px;
	}
ul.wrap_nav_others li{
	line-height: 2.8rem;
	}

}


@media (max-width: 768px) {

.smt100vw{/*強制的に全幅に制御*/
	width: 100vw!important;
	}
.smt100vw .content_body .tex_block,
.smt100vw .center_block{
	width: auto;
	}



.smt_menu{
	width: 100vw;
	margin-right: -100vw;
	}
.content_body .tex_block{
	padding-top: 20px;
	}

header .fix_nav h1{
	left: 5px;
	}

header ul.mainMenu li:nth-last-child(2),
header ul.mainMenu li:nth-last-child(3){
	display: none;
	}

.footer_contacts ul{
	display: block;
	}
.footer_contacts ul li{
	width: 100%;
	}
.footer_contacts ul li:nth-child(1) {
	border-right: none;
	border-bottom: 1px solid #D4D4D4;
	}
footer{
	width: auto;
	overflow: hidden;
	}

footer h1{
	text-align: center;
	width: 100%;
	}
footer h1 img{
	width:200px;
	}
footer .footer_innner{
	width: 100%;
	margin-top: 40px;
	}
footer ul.mainMenu{
	margin-top: 20px;
	}
footer ul.mainMenu li{
	font-size: 1.8rem;
	font-weight: 400;
	width: calc(100%  / 3);
	text-align: center;
	}
footer ul.mainMenu li a{
	padding: 5px 20px;
	}
footer ul.subMenu{
	margin: 0;
	flex-wrap: wrap;
	gap: 10px;
	width: calc(100% - 20px);
	margin: 0 auto 40px auto;
	justify-content: left;
	}
footer ul.subMenu li{
	width: calc((100% - 10px) / 2);
	min-width: auto;
	}
footer ul.subMenu li img{
	position: relative;
	}
footer ul.subMenu li a{
	padding-left: 10px;
	}
footer .footerMenu ul,
footer .wrap_inner{
	display: block;
	}
footer .wrap_inner.footerMenu{
	width: calc(100% - 40px);
	margin: 0 auto;
	}
footer .wrap_inner .footerMenu ul{
	width: calc(100% - 20px);
	padding-left: 10px;
	padding-right: 10px
	}
footer .link_index{
	display: block;
	margin-bottom: 40px;
	}
footer .link_index li{
	margin: 0 20px 10px 20px;
	}
footer ul.about li{
	font-size: 1.3rem;
	}
footer .btn_pageup{
	width: calc(100% - 40px);
	margin: 0 auto 20px auto;
	}

footer .wrap_inner div.footer2,
.wrap_footer_contact ul{
	display: block;
	}
footer .wrap_inner div.footer2 div{
	margin-bottom: 20px;
	}
footer .wrap_inner div ul li {
    font-size: 1.6rem;
    line-height: 3.0rem;
	}

.wrap_footer_contact ul li{
	margin-bottom: 20px;
	}
.wrap_footer_contact{
	padding: 20px;	
	}

a.btn_normal{
	padding-left: 30px;
	padding-right: 30px;
	display: block;
	}

.content_body .tex_block p{
	padding-bottom:20px;
	}

.wrap_ttl,
.content_body .tex_block .wrap_flex,
ul.half_block, ul.half_block2,
dl.wrap_company_profile,
ul.sustainability li,
.content_body .tex_block.recruit_apeal h3,
.content_body .tex_block.recruit_apeal .index2column.wrap_various_ways,
.content_body .tex_block.recruit_apeal.block_enjoy li{
	display: block;
	}
.wrap_ttl .breadlist{
	position: relative;
	}
.content_body .tex_block .wrap_flex.list_vis_carbon_neutral{
	flex-wrap: wrap;
	display: flex;
	}
.content_body .tex_block .wrap_flex.list_vis_carbon_neutral li,
.content_body .tex_block .wrap_flex.index5column li,
.content_body .tex_block .wrap_flex.index3column.consulting_index li,
.content_body .tex_block .wrap_flex.index4column li{
	width: calc((100% - 10px) / 2);
	}
.content_body .tex_block .wrap_flex.index3column.consulting_index,
.content_body .tex_block .wrap_flex.index5column,
.content_body .tex_block .wrap_flex.index4column{
	display: flex;
	gap: 10px;
	}
.tex_block a.btn_normal{
	height: auto;
	}

img.img400px,
img.img600px,
img.img800px{
	max-width: 100%!important;
	}
.pad40{
	padding:20px!important;
	}
.content_body .tex_block h3{
	font-size: 2.4rem;
	line-height: 3.0rem;
	}
.content_body .tex_block h4{
	font-size: 1.8rem;
	line-height: 2.6rem;
	}

.wrap_ttl,
.wrap_news,
.content_body .tex_block,
.center_block,
dl.recruit_guidelines{
    width: calc(100% - 40px);
	}
.center_block{
	margin-left: auto;
	margin-right: auto;
	}
.content_body .tex_block .wrap_sinkpia.wrap_flex div.tex,
.content_body .tex_block .wrap_sinkpia.wrap_flex div.center_block,
ul.half_block2 li:nth-child(2n+1),
ul.half_block2 li:nth-child(2n),
.content_body .tex_block .fig_feeding .wrap_flex .vis,
.content_body .tex_block .fig_feeding .wrap_flex .tex,
.content_body .tex_block ol.List_1st_column,
.content_body .tex_block ol.List_2nd_column,
dl.wrap_company_profile dt,
dl.wrap_company_profile dd,
table.company_profile_table tr td:nth-child(1),
ul.sustainability li p:nth-child(2),
.wrap_related_links ul,
.content_body .tex_block .wrap_flex.recruit_index li,
.content_body .tex_block .wrap_flex.index2column li,
.content_body .tex_block.recruit_apeal.block_enjoy li img,
.content_body .tex_block.recruit_apeal.block_enjoy li div.tex,
.content_body .tex_block .wrap_flex.index3column li,
.wrap_form dt,
.wrap_form dd{
	width: auto;
	}
.wrap_news ul.news_index li{
	margin-bottom: 20px;
	}
.wrap_news ul.news_index li p span{
	display: block;
	width: auto;
	}
.wrap_news ul.news_index li p a{
	margin-left: 10px;
	display: block;
	}

.wrap_business_detail .half_block2 a.btn_normal{
	display: block;
	height: auto;
	}

table.company_profile_table tr td{
	display: block;
	}
table.company_profile_table tr td:nth-child(1){
	padding-bottom: 0;
	font-weight: bold;
	}
table.company_profile_table tr td:nth-child(2){
	padding-left: 10px;
	border: none;
	}

@media (max-width: 768px) {

section.fdb_block > div{
	padding:10px;
	}

.content_body .tex_block.recruit_main h2{
	font-size: 2.4rem;
	}

section.fdb_block .recruit_index .fdt_ul_text{
	display: block;
	}
section.fdb_block .recruit_index .fdt_ul_text li{
	width: auto;
	margin-bottom: 10px;
	}

section.fdb_block .company_profile_table table.fdt_tables tr td:nth-child(1){
	width: auto;
	padding-bottom: 0;
	font-weight: bold;
	}
section.fdb_block .company_profile_table table.fdt_tables tr td:nth-child(2){
	padding-left: 10px;
	border: none;
	}

}
.wrap_history{
	padding: 10px;
	}
#page_history table.company_profile_table tr td{
	display: block;
	width: auto;
	}

ul.sustainability li{
	text-align: left;
	margin-bottom: 80px;
	}
ul.sustainability li img:nth-child(1){
	margin: 0 auto;
	display: block;
	width: 200px;
	}
ul.sustainability li img:nth-child(3),
ul.sustainability li img:nth-child(4){
	width: calc((100% - 13px) /2);
	}
ul.sustainability li img:nth-child(3){
	margin-right: 5px;
	}
ul.sustainability li img:nth-child(4){
	margin-left: 5px;
	}


.wrap_related_links li span{
	display: block;
	width: auto;
    margin-bottom: 10px;
	}
.content_body .tex_block .wrap_flex.recruit_index li{
	margin-bottom: 10px;
	}
.content_body .tex_block.recruit_apeal h3{
	font-size: 4rem;
    line-height: 6.0rem;
	}
#page_recruit .wrap_flex > img{
	display: block;
	margin: 20px auto;
	}

#page_recruit .content_body .tex_block .wrap_flex.index2column li,
#page_recruit .content_body .tex_block.recruit_apeal.block_enjoy li img{
	margin-bottom: 20px;
	}

dl.recruit_guidelines dt,
dl.recruit_guidelines dd{
	display: block;
	width: 100%;
	}
dl.recruit_guidelines dt{
	font-size: 1.8rem;
margin-bottom: 0;
	}
dl.recruit_guidelines dd{
	padding-left: 20px;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #707070;
	}
dl.recruit_guidelines dd.wrap_btn_recruit{
	border: none;
	}



.content_body .tex_block .wrap_flex.index3column li{
	margin-bottom: 10px;
	}
form#mailformpro dl dd{
	padding-left: 20px;
    width: calc(100% - 20px);
	}
form#mailformpro input[type="text"],
form#mailformpro input[type="email"],
form#mailformpro input[type="tel"],
form#mailformpro input[type="fax"],
form#mailformpro textarea{
	width: calc(100% - 40px)!important;
	}

