@charset "UTF-8";
/* ========================================================================================================
	共通
======================================================================================================== */
.el_flex {display: flex;}
.el_flex-wrap {flex-wrap: wrap;}
.el_flex-between {justify-content: space-between;}
.el_flex-around {justify-content: space-around;}
.el_flex-center {justify-content: center;}
.el_flex-end {justify-content: flex-end;}
.el_flex-align {align-items:center;}
.el_flex-column {flex-direction: column;}
.el_flex-reverse {flex-direction: column-reverse;}

.display-sp {display: none;}

/*	矢印部分
-------------------------------------------------------------------------------------------------------- */
.el_base-text::before,
.el_base-text::after,
.bl_col2-btn a::before,
.bl_col2-btn a::after,
.bl_bottom-link a::before,
.bl_bottom-link a::after {
	display: block;
    content: '';
    position: absolute;
    width: 18px;
    height: 1px;
    -webkit-transform: rotate(-25deg);
    transform: rotate(-25deg);
}

.el_base-text::before,
.bl_col2-btn a::before,
.bl_bottom-link a::before {
	width: 18px;
	height: 1px;
	-webkit-transform: rotate(-65deg);
	transform: rotate(25deg);
}

/* ========================================================================================================
	サスティナビリティトップ
======================================================================================================== */
.sustainability .el_headline_lv01 {
	background-image: url(../../img/sustainability/img_main_sustainability.jpg);
}

.sustainability .el_font105 .el_header_main-text {
	font-weight: 400;
	margin-bottom: 30px;
	letter-spacing: 0.05em;
	font-size: 7rem;
}

.sustainability .el_font105 .el_header_sub-text {
	font-size: 2.0rem;
	font-weight: 400;
	padding: 9px 16px;
	background: #fff;
}

.bl_block-wrap {
	width: calc(1060 / 1200 * 100%);
	max-width: 1060px;
	margin: 0 auto;
}

.bl_block-wrap.bl_sustainabl-box {
	background: url(../../img/sustainability/img_bg_sustainability000.jpg) 0 25% / cover no-repeat;
    padding: calc(60 / 1600 * 100%) 0 calc(60 / 1600 * 100%);
	width: 100%;
    max-width: 100%;
}

.bl_block-wrap.bl_sustainabl-box .bl_block-wrap-inner {
	width: calc(1600 / 1920 * 100%);
	max-width: 1600px;
	margin: 0 auto;
	display: flex;
	justify-content: flex-end;
}

.bl_block-wrap-inner .bl_col2-btn {
	width: calc(400 / 1600 * 100%);
    min-width: 342px;
	display: block;
}

.bl_block-wrap-inner .bl_col2-btn li {
	width: 100%;
    min-width: auto;
}

.bl_block-wrap-inner .bl_col2-btn li:not(:nth-of-type(1)) {
	margin-top: calc(40 / 500 * 100%);
}

.bl_partnership-box {
	width: calc(1200 / 1600 * 100%);
    margin: calc(60 / 1920 * 100%) auto calc(70 / 1920 * 100%);
    padding: calc(32 / 1920 * 100%) calc(64 / 1600 * 100%);
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #005ead;
    max-width: 1200px;
}

.el_partnership-img {
	width: calc(276 / 1200 * 100%);
	margin-right: calc(120 / 1200 * 100%);
}

.el_partnership-link {
	font-size: 1.6rem;
	margin-bottom: 0;
}

.el_partnership-link a {
	color:#005ead;
	text-decoration: underline;
	font-size: 2rem;
    font-weight: 500;
}

.el_partnership-link a:hover {
	text-decoration: none;
}

/* ========================================================================================================
	パートナーシップ構築宣言
======================================================================================================== */
.bl_declaration {
	width: 100%;
	margin-top: calc(60 / 1200 * 100%);
}

.el_declaration-title {
	bottom: calc(100% +15px);
	margin-left:calc(30 / 1200 * 100%);
	border:1px solid #DD594D;
	color: #DD594D;
	display: inline-block;
	font-size: 1.8rem;
	font-weight: bold;
	background: #fff;;
	padding: 5px 10px;
	line-height: 1;
}

.el_declaration-content {
	margin-top: -15px;
	border: 1px solid #DD594D;
	display: flex;
	justify-content: space-between;
	padding: calc(40 / 1200 * 100%) calc(60 / 1200 * 100%) calc(30 / 1200 * 100%) calc(30 / 1200 * 100%);
}

.el_declaration-text {
	width: calc(850 / 1200 * 100%);
}

.el_declaration-link {
	display: block;
	margin-top:30px;
}

.el_declaration-link a {
	color: #DD594D;
}

.el_declaration-img {
	width: calc(250 / 1200 * 100%);
}



/* ========================================================================================================
	Top Message　Sustainability
======================================================================================================== */
.bl_top-content {margin-bottom: calc(100 / 1500 * 100%);}
.el_top-item {
	width:calc(500 / 1060 * 100%);
	max-width: 500px;
}

.el_top-title {
	font-size:3rem;
	font-weight: 500;
	color: #72B836;
	letter-spacing: 0.06em;
}

.el_top-item a {
	width:100%;
	display: block;
}

.el_top-item a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.el_top-item .el_figure {
	width:calc(456 / 500 * 100%);
	max-width: 456px;
	display: block;
}

/*	緑枠部分
-------------------------------------------------------------------------------------------------------- */
.el_base-text-wrap {
	display: block;
	margin: auto 4px 0 auto;
	position: relative;
	width:calc(378 / 500 * 100%);
	font-size: 2rem;
	color: #fff;
	text-decoration: none;
}

.el_base-text-wrap::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width:100%;
	margin-top: calc(62 / 368 * -100%);
	padding-top:calc(160 / 378 * 100%);
	background: #72B836;
	mix-blend-mode: multiply;
	font-size: 2rem;
}

/*	テキスト部分
-------------------------------------------------------------------------------------------------------- */
.el_base-text {
	position: relative;
	display: inline-block;
	z-index: 1;
	margin: calc(22 / 368 * 100%) 0 calc(24 / 368 * 100%) calc(52 / 368 * 100%);
    display: block;
	letter-spacing: 0.06em;
}

.el_s-text {
	font-size: 1.4rem;
	font-weight: 400;
	letter-spacing: 0em;
	margin-right: 1rem;
}

/*	矢印部分
-------------------------------------------------------------------------------------------------------- */
.el_base-text::before,
.el_base-text::after {
	background-color: #fff;
	bottom: 10px;
	right: calc(32 / 378 * 100%);
}

.el_base-text::before {
	bottom: 18px;
	right: calc(32 / 378 * 100%);
}

/* ========================================================================================================
	SDGsへの取り組み共通部分
======================================================================================================== */
[class*="bl_sustainability-bg0"] {
	background-size:cover;
}

[class*="bl_sustainability-bg0"] .el_headline_lv02_ver03 {
	font-size: 3.8rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #72B836;
	width: 100%;
}

/* ========================================================================================================
	SDGsへの取り組み
======================================================================================================== */
.bl_sustainability-bg01 {
	background:url(../../img/sustainability/img_bg_sustainability01.jpg) 0 0 / cover no-repeat;
	padding:calc(104 / 1060 * 100%) 0 calc(126 / 1060 * 100%);
}

.bl_sustainability-bg01 .el_headline_lv02_ver03 {
	margin-bottom: calc(28 / 1060 * 100%);
}

.el_attempt-lead {
	width:calc(650 / 1060 * 100%);
	font-size:2rem;
	font-weight: 500;
	line-height: 2.25;
	margin-bottom:calc(34 / 1060 * 100%)
}

/*	ボタン部分
-------------------------------------------------------------------------------------------------------- */
.bl_col2-btn {
	width: calc(530 / 1060 * 100%);
	min-width: 342px;
}

.bl_col2-btn li {
	width: calc(240 / 530 * 100%);
}

.bl_col2-btn a {
	display: inline-block;
	background: #E6594D;
	width: 100%;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 400;
	padding:calc(18 / 240 * 100%) 0 calc(16 / 240 * 100%) calc(32 / 240 * 100%);
	box-sizing: border-box;
	position: relative;
	min-width: 166px;
}

.bl_col2-btn .el_iphd-link {
	display: block;
	font-size: 1.4rem;
}

/*	矢印部分
-------------------------------------------------------------------------------------------------------- */
.bl_col2-btn a::before,
.bl_col2-btn a::after {
    background-color: #fff;
    bottom: calc(105 / 240 * 100%);
    right: calc(32 / 378 * 100%);
}

.bl_col2-btn a::before {
    bottom: calc(125 / 240 * 100%);
    right: calc(32 / 378 * 100%);
}

/* ========================================================================================================
	サステナビリティの取り組み
======================================================================================================== */
.bl_sustainability-bg02 {
	background:url(../../img/sustainability/img_bg_sustainability02.jpg) 0 0 / cover no-repeat;
	padding:calc(92 / 1060 * 100%) 0 calc(88 / 1060 * 100%);
	margin-bottom:calc(124 / 1600 * 100%);
}

.bl_sustainability-bg02 .el_headline_lv02_ver03 {
	text-align: center;
	margin-bottom: calc(60 / 1060 * 100%);
}

/*	3枚のカード部分
-------------------------------------------------------------------------------------------------------- */
.bl_item-sustainability {
	width:calc(304 / 1060 * 100%);
	background:#fff;
	border-top: 8px solid #72B836;
}

.bl_item-sustainability dt {
	width: 100%;
	min-height:288px;
}

/* アイコン */
.bl_item-sustainability figure {margin-bottom:calc(30 / 304 * 100%);}
.bl_item-sustainability:nth-of-type(1) figure {width:calc(118 / 304 * 100%);}
.bl_item-sustainability:nth-of-type(2) figure {width:calc(126 / 304 * 100%);}
.bl_item-sustainability:nth-of-type(3) figure {width:calc(96 / 304 * 100%);}

/* テキスト */
.bl_item-sustainability dt span {
	display: block;
	width: 100%;
	position: relative;
	font-size: 2.6rem;
	font-weight: 700;
	color:#328F3B;
	text-align: center;
	letter-spacing: 0.2em;
	padding-bottom:calc(40 / 304 * 100%);
}

/* アンダーバー */
.bl_item-sustainability dt span::after {
	display: block;
	position: absolute;
	left:calc(50% - (40 / 304 * 100% / 2));
	bottom: 0;
    content: '';
	width:calc(40 / 304 * 100%);
	height:1px;
	background: #72B836;
}

/*	3枚のカード リンク部分
-------------------------------------------------------------------------------------------------------- */
.bl_item-sustainability dd {margin: calc(80 / 304 * 100%) 0 calc(110 / 304 * 100%);}

.bl_pdf-list {
	width:100%;
	margin:0 calc(26 / 304 * 100%) 0;
}
.bl_pdf-list li {margin-top: calc(18 / 255 * 100%);}
.bl_pdf-list a {
	font-size: 1.4rem;
	font-weight: 700;
	color:#E6594D;
	padding: 10px 0;
}

.bl_pdf-list .el_icon-pdf {
	padding-left:calc(32 / 252 * 100%);
	background: url(../../img/sustainability/icon_pdf.png) 0 4px no-repeat;
}


/*	最下部のバナー部分
-------------------------------------------------------------------------------------------------------- */
.bl_bnner-box {
	width:calc(1200 / 1600 * 100%);
	margin: 0 auto calc(70 / 1600 * 100%);
	max-width: 1200px;
	background: url(../../img/sustainability/img_sustainability03.jpg) 0 0 / cover no-repeat;
}

.bl_bnner-box a {
	display: block;
	padding: calc(65 / 1200 * 100%) 0;
	font-size: 2rem;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.1em;
	text-align: center;
}

.bl_bnner-box.el_ver02 {
	background: url(../../sustainability/takeup/img_sustainability04.jpg) 0 0 / cover no-repeat;
}

.bl_bnner-box.el_ver02 a {
	padding: calc(43 / 1200 * 100%) 0;
}

.bl_bnner-box.el_ver02 .el_main-text {
	font-size: 2.8rem
}

.bl_bnner-box.el_ver02 .el_sub-text {
	font-size: 1.8rem;
}

/*	最下部のリンク部分
-------------------------------------------------------------------------------------------------------- */
.bl_bottom-link {
	width:calc(1200 / 1600 * 100%);
	min-width: 800px;
	margin: 0 auto;
	padding: calc(47 / 1200 * 100%) 0;
	max-width: 1200px;
	border: 1px solid #C3C3C3;
}

.bl_bottom-link li {
	display: inline-block;
	margin-right:calc(84 / 1200 * 100%);
}

.bl_bottom-link li:nth-last-of-type(1) {margin-right:0;}

.bl_bottom-link a {
	display: block;
	position: relative;
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	color:#E6594D;
	list-style: 1;
	padding-right: 30px;
}

/*	矢印部分
-------------------------------------------------------------------------------------------------------- */
.bl_bottom-link a::before,
.bl_bottom-link a::after {
    background-color: #E6594D;
    bottom: calc(88 / 240 * 100%);
    right: 0;
}

.bl_bottom-link a::before {
    bottom: calc(140 / 240 * 100%);
    right: 0;
}

/* ========================================================================================================
	サステナビリティ方針
======================================================================================================== */
.bl_head-line-list li {font-size:1.8rem;}
.el_headline-title {
	display: inline-block;
	width: 60px;
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	トップメッセージ
======================================================================================================== */
.message {overflow:hidden}
.el_headline_lv04,
.bl_content-inner-box > .bl_contents .el_headline_lv04.bl_w100 {
	font-size: 2rem;
	margin-bottom: calc(10 / 1200 * 100%);
}

.el_headline_lv04 {font-size:1.8rem;}
.el_headline_lv04 span  {color: #DD594D;}
span.el_headline_lv04 {
	display: block;
	font-size: 1.8rem;
    line-height: 1.4;
}

.el_message-img {
	width: calc(276 / 1200 * 100%);
	float:right;
	margin: 0 0 20px 20px;
}

.el_message-img > img {margin-bottom: calc(40 / 276 * 100%);}
.el_message-img figcaption {width: calc(188 / 276 * 100%);}

.el_message-text {
	width:calc(100% - 20px - (calc(276 / 1200 * 100%)));
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	サステナビリティ方針
======================================================================================================== */
.bl_first-read-annotation {
	font-size:1.4rem;
	margin-top: calc(44 / 1200 * 100%);
}

.el_pphilosophy {
	width:calc(850 / 1200 * 100%);
	margin: 0 auto;
}

/* ========================================================================================================
	国連グローバル・コンパクトとSDGs
======================================================================================================== */
.bl_first-read-annotation.el_other {margin-bottom: calc(66 / 1200 * 100%);}
.el_other-item {width:calc(410 / 1200 * 100%);}
.el_other-item:nth-of-type(1) img {
	width: calc(206 / 410 * 100%);
	margin: 0 auto calc(28 / 690 * 100%);
}
.el_other-item + .el_other-item {width:calc(587 / 1200 * 100%);}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	マテリアリティ（重要課題）
======================================================================================================== */
.el_materiality-img,
.bl_materiality-table {
	margin-top: calc(44 / 1200 * 100%);
}

.bl_materiality-scroll > img {
	width:calc(850 / 1200 * 100%);
	margin: 0 auto;
}

table {
	box-sizing: border-box;
	border-collapse: collapse;
	table-layout: fixed;
}

th {
	border-left:1px solid #fff;
	background-color: #E6594D;
	color: #fff;
	text-align: center;
	font-size: 1.3rem;
	font-weight: 500;
	padding: 10px 8px;
}

td {
	border-right:1px solid #707070;
	border-bottom:1px solid #707070;
	text-align: center;
	vertical-align: middle;
	padding: 5px 8px;
	font-size: 1.3rem;
}

th:nth-last-of-type(1),
td:nth-last-of-type(1),
table tr:not(:first-child) th {
    min-height: 3.6em;
}

.el_top-list {border-right:none;}

.bl_materiality-table {width: 1200px;}
.col01 {width: 50px;}
.col02 {width: 76px;}
.col03 {width: 114px;}
.col04 {width: 42px;}
.col05 {width: 104px;}
.col06 {width: 813px;}
.el_top-list {
	background:#F0F0F1;
	line-height: 1.2;
	text-align:center; /* [2]Chromeで中央に寄せたいときに指定 */
	white-space:nowrap;
}

.el_top-list span {
	display:block; /* [1]Safariで幅が広がるのを防止 */
	margin:0 auto; /* [2]Chromeで中央に寄せたいときに指定 */
	-webkit-writing-mode:vertical-rl;
	writing-mode: vertical-rl
}
.bl_attempt-list {margin-left: 12px;}

.bl_attempt-list li {
	text-align:left;
	padding-left:1em;
	text-indent: -1em;
}

.el_sdgs-icon {
	width: calc(84 / 98 * 100%);
	margin: auto;
}

.el_td-left-text {
	text-align: left;
	padding-left: 20px;
}


/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	推進体制
======================================================================================================== */
.bl_materiality-box {margin-bottom: calc(40 / 1200 * 100%);}
.el_headline_lv03_ver04 {
	font-size: 2rem;
	font-weight: 500;
	margin-bottom: 10px;
}

.bl_promotion-system .bl_first-read-annotation {margin: 0 0 calc(34 / 1200 * 100%);}
.bl_management-system {width: 1200px;}
td {border-bottom: 1px dotted #707070;}
.bl_management-system .el_top-list {
	writing-mode: horizontal-tb;
    border-right: 1px solid #707070;
}

.bl_management-system tr:nth-last-of-type(1) td {border-bottom: 1px solid #707070;}

.el_sustainability-scroll img {
	width: calc(850 / 1200 * 100%);
	margin: 0 auto;
}

.bl_tms-basic-policy dt {
	font-size: 2rem;
	font-weight: 500;
	border-bottom: 1px dotted #707070;
	padding-bottom: 4px;
	margin-bottom: 8px;
}

.bl_tms-basic-policy dd {margin-bottom: 26px;}
.last-text {text-align: right;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	取り組み事例
======================================================================================================== */
.bl_effort-example {
	width:calc(1000 / 1200 * 100%);
	min-height: 440px;
	margin: 0 auto calc(44 / 1200 * 100%);
	padding:calc(20 / 1200 * 100%);
	box-sizing: border-box;
}

.bl_effort-example:nth-of-type(1) {margin-top: calc(44 / 1200 * 100%);}

/*	背景白枠部分
-------------------------------------------------------------------------------------------------------- */
.bl_effort-content {
	width:calc(460 / 960 * 100%);
	min-height: 400px;
	background: rgba(255,255,255,0.85);
	padding:calc(45 / 960 * 100%) calc(28 / 960 * 100%) calc(24 / 960 * 100%);
	box-sizing: border-box;
}

/*	タイトル
-------------------------------------------------------------------------------------------------------- */
.el_effort-title {
	font-size:2rem;
	font-weight: 500;
	line-height: 1.2;
}

/* サブタイトル */
.el_effort-sub-title {
	display: inline-block;
	font-size:1.6rem;
	font-weight: normal;
	position: relative;
	margin-left: 18px;
}

.el_effort-sub-title::before,
.el_effort-sub-title::after {
	position: absolute;
	content: '';
	height: 1px;
	width: 14px;
	background: #333333;
}
.el_effort-sub-title::before {
	top: 50%;
	left:-16px;
}

.el_effort-sub-title::after {
	top: 50%;
	right:-16px;
}

/*	コンテンツテキスト
-------------------------------------------------------------------------------------------------------- */
.el_effort-text {
	margin: calc(16 / 404 * 100%) 0 0;
}

/*	PDFやテキストリンク
-------------------------------------------------------------------------------------------------------- */
.el_effort-content-top .bl_pdf-list {margin:0;}
.el_effort-content-top .bl_pdf-list li {margin: calc(18 / 404 * 100%) 0 0;}
.el_effort-content-top .bl_pdf-list .el_icon-pdf {padding-left: calc(30 / 404 * 100%);}

/*	SDGsアイコンリスト
-------------------------------------------------------------------------------------------------------- */
.bl_sdgs-icon-list {
	width:calc(392 / 404 * 100%);
}

.el_effort-sdgs-icon {
	width: calc(56 / 392 * 100%);
}

.el_effort-example-img01 {background:url(../../img/sustainability/sdgs/img_effort_example01.jpg) left bottom / 100% no-repeat;}
.el_effort-example-img02 {background:url(../../img/sustainability/sdgs/img_effort_example02.jpg) left bottom / 100% no-repeat;}
.el_effort-example-img03 {background:url(../../img/sustainability/sdgs/img_effort_example03.jpg) left bottom / 100% no-repeat;}
.el_effort-example-img04 {background:url(../../img/sustainability/sdgs/img_effort_example04.jpg) left bottom / 100% no-repeat;}
.el_effort-example-img05 {background:url(../../img/sustainability/sdgs/img_effort_example05.jpg) left bottom / 100% no-repeat;}
.el_effort-example-img06 {background:url(../../img/sustainability/sdgs/img_effort_example06.jpg) left bottom / 100% no-repeat;}

/*	アニメーション
-------------------------------------------------------------------------------------------------------- */
/*1.フェードインアニメーションの指定*/
.bl_effort-example,
.el_effort-title,
.el_effort-sub-title,
.el_effort-text,
.el_effort-content-top .bl_pdf-list,
.bl_sdgs-icon-list,
.sdgs-icon-list01,
.sdgs-icon-list02,
.sdgs-icon-list03,
.sdgs-icon-list04,
.sdgs-icon-list05,
.sdgs-icon-list06,
.sdgs-icon-list07 {opacity: 0;} /*一瞬表示されるのを防ぐ*/
.fadeInDown {
    animation-name: fadeInDown;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}
@keyframes fadeInDown {
    0% {
        opacity: 0;
    }
    100% {
    opacity: 1;
    transform: translate(0);
    }
}

/*2.上下の動きを指定*/
.downup {transform: translateY(100px);}
.title-downup {transform: translateY(25px);}
.sub-title-downup {transform: translateY(40px);}
.text-downup {transform: translateY(120px);}
.link-downup {transform: translateY(80px);}
.icon-list-downup {transform: translateY(55px);}
.icon-list01-downup {transform: translateY(100px);}
.icon-list02-downup {transform: translateY(100px);}
.icon-list03-downup {transform: translateY(100px);}
.icon-list04-downup {transform: translateY(100px);}
.icon-list05-downup {transform: translateY(100px);}
.icon-list06-downup {transform: translateY(100px);}
.icon-list07-downup {transform: translateY(100px);}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	SDGs Topics
======================================================================================================== */
.ly_archive-area {
	width: calc(1000 / 1200 * 100%);
	margin: 0 auto 0;
}

.bl_archive-list {
	width:calc(190 / 1000 * 100%);
	display: block;
	margin: 0;
	opacity: 0;
    background: #E6594D;
	padding: 14px 0;
	position: relative;
}

.bl_archive-list select {
	color:#fff;
	font-size: 1.8rem;
	padding-left:32px;
	box-sizing: border-box;
	width: 100%;
	position: relative;
	z-index: 1;
}

.bl_archive-list::after {
	content: "";
	position: absolute;
	top: calc(50% - 14px);
	right: 14px;
	position: absolute;
	vertical-align: middle;
	width: 14px;
	height: 14px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	z-index: 0;
}

.bl_archive-list option {color: #000;}
.bl_archive-list a::before {right: -28px;}


.bl_sdgs-item-list {
	width: 100%;
	margin-top: calc(50 / 1000 * 100%);
}

.bl_sdgs-item-box {
	width: calc(300 / 1000 * 100%);
	margin: calc(50 / 1000 * 100%) calc(50 / 1000 * 100%) 0 0;
}

.bl_sdgs-item-box:nth-of-type(1),
.bl_sdgs-item-box:nth-of-type(2),
.bl_sdgs-item-box:nth-of-type(3) {margin-top: 0}
.bl_sdgs-item-box:nth-of-type(3n) {margin-right:0;}

.el_sdgs-img {
	position: relative;
	transition: transform 1.5s;
	width: 100%;
	max-width: 300px;
	overflow: hidden;
	margin-bottom: calc(10 / 300 * 100%);
}

.el_sdgs-img img{
	transform: scale(0);
	margin-bottom: calc(30 / 300 * 100%);
	position: absolute;
	width: auto;
	height: auto;
	top: 50%;
	left: 50%;
	max-width: 100%;
	max-height: 100%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.el_sdgs-img::after {
	display: block;
	padding-top: 100%;
	content: '';
}

.el_sdgs-img a::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width:calc(40 / 300 * 100%);
	padding-top:calc(40 / 300 * 100%);
	background: url(../../img/sustainability/sdgs/icon_magnifying_glass_.jpg) 0 0 no-repeat;
	z-index: 1;
	background-size: cover;
}

.bl_sdgs-content dt {
	font-weight: bold;
	border-bottom: 1px solid #707070;
	padding-bottom: 10px;
	margin-bottom: 6px;
	line-height: 1.4;
}

.el_sdgs-item-content .bl_pdf-list {margin:0;}
.el_sdgs-item-content .bl_pdf-list li {margin-top: calc(10 / 255 * 100%);}

.el_sdgs-item-content a {color:#E6594D;}

.el_sdgs-item-day {
	display: block;
	font-weight: normal;
	margin-bottom: 6px;
}

.el_sdgs-item-title {
	display: flex;
	height: 40px;
	overflow: hidden;
	align-items: center;
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み 基本的な考え方
======================================================================================================== */
.el_float-left {
	width: calc(104 / 1200 * 100%);
	max-width: 104px;
}

.el_clear .el_float-right {
	width: calc(338 / 1200 * 100%);
	max-width: 338px;
	float: right;
	margin: 0 0 calc(40 / 1200 * 100%) calc(30 / 1200 * 100%);
}

.el_certification-data {
	width: calc(1050 / 1200 * 100%);
}

.el_ol-indent-2rem li {
	display: flex;
}

.el_img-w90 {
	width: calc(1060 / 1200 * 100%);
	max-width: 1060px;
	margin:0 auto;
}

.el_headline_lv03_ver03 {
    font-size: 2.5rem;
    color: #E6594D;
    letter-spacing: 0.02em;
    font-weight: 500;
    margin-bottom: 33px;
    line-height: 1;
    text-align: center;
}

.el_bg-red {
	background:rgba(221,89,77,0.2);
	padding-left: 20px;
	margin-bottom: calc(20 / 1200 * 100%);
}

.el_numbering li  {
	padding-left:1.5em;
	text-indent: -1.5em;
}

/* 四角い枠共通
-------------------------------------------------------------------------------------------------------- */
.el_item03 {
	border: 1px solid #c3c3c3;
	width:calc(376 / 1200 * 100%);
	max-width: 376px;
	margin: 32px 32px 0 0;
	padding: 30px 20px;
	box-sizing: border-box;
	text-align: justify;
}

.el_item03:nth-of-type(3n) {margin-right: 0;}
.el_item03:nth-last-of-type(1) {margin-right: 0;}
.el_item03:nth-of-type(1) {margin-top: 0;}
.el_item03:nth-of-type(2) {margin-top: 0;}
.el_item03:nth-of-type(3) {margin-top: 0;}

/* アイコン */
.el_top-icon {
	width:calc(76 / 376 * 100%);
	max-width: 76px;
	margin: 0 auto 6px;
}

/* テキスト */
[class*="_definition-list"] dt {
	font-size:2rem;
	font-weight: 500;
	text-align: center;
	position: relative;
	margin-bottom: 50px;
}

[class*="_definition-list"] dt::after {
	position: absolute;
	bottom: -15px;
	left: calc(50% - 20px);
	width: 40px;
	height: 1px;
	margin: auto;
	content: " ";
	vertical-align: middle;
	background-color: #dd594d;
}

[class*="_definition-list"] .el_text-left {
	margin-bottom: 8px;
}

[class*="_definition-list"] .el_text-left::after {
	display: none;
}

/* bl_col03の幅
-------------------------------------------------------------------------------------------------------- */
.bl_contents .el_inner-width {
	width: calc(1070 / 1200 * 100%);
	max-width: 1070px;
	margin: 0 auto 50px;
}

.bl_contents .el_tow-col {
	width: calc(700 / 1200 * 100%);
	max-width: 700px;
	margin: 0 auto 50px;
}

.el_inner-width .el_item03,
.el_tow-col .el_item03 {
	width: 335px;
}

.el_tow-col .el_item03 {margin: 32px 0 0;}
.el_tow-col .el_item03:nth-of-type(1),
.el_tow-col .el_item03:nth-of-type(2) {margin: 0;}

/* テキストの位置
-------------------------------------------------------------------------------------------------------- */
.bl_contents .el_text-left {text-align: left;}
.bl_contents .el_text-center {text-align: center;}
.bl_contents .el_text-right {text-align: right;}

.el_arrow-ellipse {
    position: relative;
    display: inline-block;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
    border: 1px solid #CDCDCD;
    border-radius: 30px;
    width: calc(228 / 1200 * 100%);
}

.el_btn_red .el_arrow-ellipse {
    border: 1px solid #e6594d;
	width: auto;
}

.el_no-after .el_arrow-ellipse a {
	padding: 0.7rem 2.3rem;
	font-size: 1.8rem;
	color: #e6594d;
	display: inline-block;
	width: auto;
	letter-spacing: 0;
}

.el_text-red {
	color: #e6594d;
	font-weight: bold;
}

.el_no-after .el_arrow-ellipse:before,
.el_no-after .el_arrow-ellipse:after {
	display: none;
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み 人材育成・キャリア開発支援
======================================================================================================== */
.bl_pdf-list.el_career-support-pdf {
	padding-left: calc(32 / 1200 * 100%);
	margin-top:0;
	margin-left:0;
	margin-right:0;
	padding: 0;
}

.bl_pdf-list.el_career-support-pdf li {
	margin:calc(18 / 1200 * 100%) 0 0;
}

.el_ol-indent-2rem span:nth-of-type(1) {
	font-weight: bold;
}

.bl_pdf-list.el_career-support-pdf .el_icon-pdf {
	padding-left: 32px;
}

.bl_content-inner-box .bl_pdf-list.el_career-support-pdf .el_icon-pdf {padding-left: calc(32 / 570 * 100%);}

.bl_content-inner-box > .bl_contents {width:calc(570 / 1200 * 100%);}
.bl_content-inner-box > .bl_contents h4  {margin-bottom:calc(5 / 570 * 100%);}
.bl_content-inner-box > .bl_contents p {margin-bottom: 0;}
.bl_content-inner-box > .bl_contents:nth-last-of-type(2) {margin-bottom: 0;}
.el_sustaina-mb30 {margin-bottom:calc(16 / 1200 * 100%);}
.el_sustaina-mb40 {margin-bottom:calc(20 / 1200 * 100%);}
.el_sustaina-mb60 {margin-bottom:calc(40 / 1200 * 100%);}
.el_sustaina-mb80 {margin-bottom:calc(60 / 1200 * 100%);}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み 労働安全と健康経営
======================================================================================================== */
.bl_gray-box {
	background: #f2f2f2;
	padding: calc(16 / 1200 * 100%) calc(40 / 1200 * 100%);
}

.bl_gray-box .el_headline_lv04 {
	color: #DD594D;
	margin-bottom: calc(10 / 1152 * 100%);
}

.bl_gray-box .el-text-right {margin-bottom: 0;}
.bl_content-inner-box .bl_w100 {width: 100%;}
.bl_content-inner-box .el_sustaina-mb30 {margin-bottom:calc(16 / 570 * 100%);}

.bl_sus-left-content,
.bl_sus-right-content {
	width:calc(570 / 1200 * 100%);
}

.bl_sus-left-content .el_sus-list-content {margin-bottom:calc(12 / 570 * 100%);}
[class*="bl_sus-"]:nth-last-of-type(1),
[class*="bl_sus-"]:nth-last-of-type(2),
[class*="bl_sus-"] .el_sus-list-content {margin-bottom: 0;}

.bl_sus-list-item + .bl_sus-list-item {margin-top:calc(12 / 570 * 100%);}

.bl_sus-list-item dt {
	padding-left: 1.5rem;
	text-indent: -1.5rem;
}

.bl_sus-list-item dd {
	padding-left: 1.5rem;
}

.bl_overtime-ransition {width: 100%;}

.bl_overtime-ransition caption {
	width:100%;
	text-align: left;
	font-size: 1.4rem;
}

.bl_overtime-ransition th {font-size: 1.4rem;}

.bl_overtime-ransition td {
	border: 1px solid #e6e6e6;
	border-top: none;
	font-size: 1.4rem;
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	ワーク・ライフ・インテグレーションの推進
======================================================================================================== */
.bl_pdf-list.el_career-support-pdf.el_work-life-list li {margin-right:calc(60 / 1200 * 100%);}
.el_img-w614 {
	width: calc(614 / 1200 * 100%);
	max-width: 100%;
	margin:calc(20 / 1200 * 100%) auto 0;
}

.el_work-life-table th:nth-of-type(1) {
	width: calc(225 / 570 * 100%);
}

.el_work-life-table .el_top-list {
	text-align: left;
	padding:16px 10px;
	font-weight: 500;
}

.el_work-life-table .el_top-list {
	text-align: left;
	padding:16px 10px;
	font-weight: 500;
}

.el_work-life dt {font-weight: 600;}
.el_work-life .bl_pdf-list {
	width:50%;
	margin-top: 7px;
}

.bl_w100.el_flex.el_flex-between {margin-top: 10px;}
.el_lead-bottom {margin-bottom: 0;}
.el_arrow-ellipse + .el_arrow-ellipse {margin-left: 20px;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	認証・認定一覧
======================================================================================================== */
.bl_certification-block {
	width: 100%;
	margin-bottom: calc(24 / 1200 * 100%)
}

.bl_certification-block + .bl_certification-block {
	padding-top: calc(24 / 1200 * 100%);
    border-top: 1px solid #ccc;
}

.bl_certification-area {
	width: 100%;
	overflow: hidden;
}

.el_certification-img {
	width: calc(100 / 1200 * 100%);
	float: left;
	margin:0 calc(30 / 1200 * 100%) 0 0;
}

.el_certification-img img {
	margin: 0 auto;
}

.el_h100 {
	max-height:100px;
	width: auto;
}

.bl_certification-spec {
	width: calc(1070 / 1200 * 100%);
	float: right;
}

.bl_certification-spec p {margin-bottom:0;}

.el_spot {margin: 10px 0 0;}
.bl_pdf-list .el_pdf-link {margin:0;}
.bl_pdf-list .el_icon-pdf {padding-left: 30px;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み ダイバーシティの推進
======================================================================================================== */
.el_gray-list {margin-top: calc(20 / 1120 * 100%);}
.el_gray-title {
	font-size: 1.6rem;
	text-indent: -1rem;
}
.el_gray-ul-list li {
	padding-left: 1rem;
	text-indent: -1rem;
}
.el_gray-ol-list li {font-weight: bold;}
.el_gray-ol-list .el_gray-list-text {
	padding-left: 3rem;
	font-weight: normal;
	margin-bottom: 0;
}

.el_divercity-table td {padding: 15px 16px 9px}
.el_divercity-table .el_top-list {
	font-weight: 500;
	text-align: left;
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	情報開示の考え方
======================================================================================================== */
.bl_group-box {
	border: 2px solid #dd594d;
	box-sizing: border-box;
}

.el_h3-vertical-headline {
	background: #dd594d;
	color: #fff;
	font-size:2.2rem;
	font-weight: 500;
	line-height: 1;
	padding: calc(20 / 1198 * 100%) calc(25 / 1198 * 100%);
	box-sizing: border-box;
	text-align: center;
}

.el_h3-vertical-headline span + span {margin:0 2rem;}

.tcu-all {
	transform: rotate( -90deg );
	display: inline-block;
	text-align: center;
	border: 1px solid #000;
	line-height: 1;
	white-space:nowrap;
	position: relative;
}

.bl_content-area {
	width: 100%;
	padding: calc(44 / 1198 * 100%);
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.bl_subgroup-box {
	width: calc(350 / 1124 * 100%);
	max-width: 366px;
}

.bl_subgroup-box .bl_sub-inner {
	width:calc(100% - (124 / 996 * 100%));
	margin: 0 auto calc(25 / 996 * 100%);
}

.bl_subgroup-box + .bl_subgroup-box {
	width: calc(724 / 1124 * 100%);
	max-width: 732px;
}

.bl_subgroup-box + .bl_subgroup-box .bl_sub-inner-wrap {
	display: flex;
}

.bl_subgroup-box + .bl_subgroup-box .bl_sub-inner {
	width:calc(50% - (62 / 996 * 100%));
	margin: 0 auto;
}

.el_h4-vertical-headline {
	background: #707070;
	color: #fff;
	font-size:2rem;
	font-weight: 400;
	line-height: 1;
	padding: 10px 0;
	box-sizing: border-box;
	text-align: center;
}

.bl_sub-inner {
	margin:0 calc(31 / 996 * 100%) calc(25 / 996 * 100%);
}

.bl_box-left {
	display: flex;
	justify-content: center;
	align-items: center;
	border-bottom: 1px solid #b3b3b3;
	min-height: 100px;
	margin-bottom: 10px;
}

.bl_box-left figure {
	width: calc(60 / 364 * 100%);
	margin-right: calc(20 / 364 * 100%);
}

.el_h5-headline {
	font-size: 2rem;
	color: #dd594d;
	font-weight: 500;
}

.bl_box-right span {
	/*
	width: calc(630 / 934 * 100%);
	padding-left: calc(30 / 934 * 100%);
*/
}

.bl_sub-inner-wrap .el_link {
	display: block;
	margin: 0;
	font-size:1.4rem;
}

.bl_box-right a {
	font-size: 1.6rem;
	font-weight: 500;
	color: #dd594d;
}

.bl_think-box .bl_sus-list-item {
	width: calc(570 / 1200 * 100%);
	margin-top: calc(60 / 1200 * 100%);
}

.bl_think-box .bl_sus-list-item:nth-last-of-type(1) {
	margin-top: calc(30 / 1200 * 100%);
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	CSRレポート
======================================================================================================== */
.bl_csr-read {
	font-size: 1.4rem;
	margin-bottom: 70px;
}

.el_csr-this-year-img {
	width: calc(420 / 1200 * 100%);
}

.el_csr-this-year-img img {
	border: 1px solid #b6b6b6;
}

.bl_csr-dl-box {
	width: calc(720 / 1200 * 100%);
}

.el_csr-this-yea-dl {
	display: inline-block;
	font-size: 1.8rem;
	border: 1px solid #e6594d;
	border-radius: 25px;
}

.el_csr-this-yea-dl {
	color: #e6594d;
	padding: 6px calc(23 / 720 * 100%);
}

.bl_dl-data {margin-top:calc(30 / 720 * 100%);}
.bl_dl-data a {
	color: #333;
	font-weight: 400;
}

.bl_back-no {display: flex;}

.el_back-no-list {
	width: calc(175 / 1200 * 100%);
	margin-right: calc(30 / 1200 * 100%);
}

.el_back-no-list:nth-last-of-type(1) {
	margin-right: 0;
}

.el_scr-img {
	border: 1px solid #b6b6b6;
}

.el_scr-title {
	display: block;
	text-align: center;
	margin-top: calc(40 / 1200 * 100%)
}



/* ========================================================================================================
	モーダル上書き用CSS
======================================================================================================== */
.with-featherlight .featherlight .featherlight-content {overflow: initial;}
.with-featherlight .featherlight .featherlight-close-icon {
	top: -60px;
	color: #fff;
	font-size: 2.4rem;
	font-weight: bold;
	background-color: #000;
	width: 60px;
	height: 60px;
}

.featherlight-previous,
.featherlight-next {
	position: absolute;
    content: '';
    width: 60px;
    height: 60px;
    background: #000;
    color: #fff;
    font-size: 2.4rem;
	font-weight: bold;
    text-align: center;
    line-height: 60px;
    cursor: pointer;
    top: calc(50% - 30px);
}

.featherlight-previous {left:-120px;}
.featherlight-next {right:-120px;}
/* ========================================================================================================
	SP用CSS
	------------------------------------------------------------------------------------------------------
	@media all and (max-width: 750px)
======================================================================================================== */
@media all and (max-width: 750px) {
	.bl_block-wrap {
		width: calc(100% - 40px);
		max-width: 100%;
	}

	.display-sp {display: block;}
	.el_sustaina-mb80 {margin-bottom:calc(80 / 690 * 100%);}

/*	flex→blockへ
-------------------------------------------------------------------------------------------------------- */
	.bl_top-content.el_flex,
	.bl_col2-btn.el_flex,
	.bl_sustainability-bg02 .bl_block-wrap,
	.bl_bottom-link.el_flex,
	.bl_other-list.el_flex,
	.bl_sdgs-item-list.el_flex,
	.bl_w100.el_flex.el_flex-between,
	.el_work-life-list.el_flex,
	.el_work-life.el_flex,
	.bl_csr-this-year.el_flex {display:block;}

/*	h1タイトル
-------------------------------------------------------------------------------------------------------- */
.sustainability .el_font105 .el_header_main-text {font-size: 4rem;}
.sustainability .el_font105 .el_header_sub-text {
	font-size: 1.5rem;
	padding: 10px;
}

.el_bg-red {
    padding-left: 10px;
    margin-bottom: calc(20 / 690 * 100%);
}


/* ========================================================================================================
	サスティナビリティ方針
======================================================================================================== */
	.el_headline-title {width: calc(100 / 750 * 100%);}

	.bl_partnership-box {
		width:calc(600 / 750 * 100%);
		margin: calc(60 / 750 * 100%) auto calc(60 / 750 * 100%);
		display: block;
	}

	.el_partnership-img {
		width:calc(400 / 600 * 100%);
		margin: calc(40 / 600 * 100%) auto calc(60 / 600 * 100%);
	}

	.el_partnership-link a {
		display: block;
		margin-top: calc(40 / 600 * 100%);
	}

	/* ========================================================================================================
		パートナーシップ構築宣言
	======================================================================================================== */
	.bl_declaration {
		width: 100%;
		margin-top: calc(80 / 690 * 100%);
	}

	.el_declaration-title {
		bottom: calc(100% +15px);
		margin-left:calc(30 / 960 * 100%);
		border:1px solid #DD594D;
		color: #DD594D;
		display: inline-block;
		font-size: 1.8rem;
		font-weight: bold;
		background: #fff;;
		padding: 5px 10px;
		line-height: 1;
	}

	.el_declaration-content {
		margin-top: -15px;
		border: 1px solid #DD594D;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		padding: calc(100 / 690 * 100%) calc(60 / 690 * 100%) calc(60 / 690 * 100%);
	}

	.el_declaration-text {
		margin-bottom:0;
		width: 100%;
		order:2;
	}

	.el_declaration-link {
		display: block;
		margin-top:30px;
	}

	.el_declaration-link a {
		color: #DD594D;
	}

	.el_declaration-img {
		width: 60%;
		margin: 0 auto 30px;
		order:1;
	}
	/* ========================================================================================================
	Top Message　Sustainability
======================================================================================================== */
	.bl_top-content {
		width: 100%;
		margin-bottom: calc(200 / 670 * 100%);
	}

	.el_top-item {
		width:100%;
		max-width: 100%;
	}

	.el_top-item:nth-of-type(1) {margin-bottom:calc(100 / 670 * 100%);}

	.el_top-item figure {
		width:calc(600 / 670 * 100%);
		max-width: 100%;
	}

	.el_top-item a {width: 100%;}
	.el_base-text {margin: calc(18 / 600 * 100%) 0 calc(16 / 600 * 100%) calc(52 / 600 * 100%);}

/*	矢印部分
-------------------------------------------------------------------------------------------------------- */
	.el_base-text::before,
	.el_base-text::after {right: calc(16 / 378 * 100%);}

/* ========================================================================================================
	SDGsへの取り組み
======================================================================================================== */
	.bl_sustainability-bg01 {
		padding: calc(80 / 750 * 100%) 0 calc(80 / 750 * 100%);
		background-position: right 26% top 0;
	}
	.bl_sustainability-bg01.el_headline_lv02_ver03 {margin-bottom: calc(28 / 670 * 100%);}
	[class*="bl_sustainability-bg0"] .el_headline_lv02_ver03 {font-size: 2.6rem;}
	.el_attempt-lead {
		width: 100%;
		font-size: 1.6rem;
		line-height: 1.8;
		margin-bottom: calc(60 / 670 * 100%);
	}

	.bl_col2-btn {
		width: 100%;
		max-width: 100%;
	}

	.bl_col2-btn li:nth-of-type(1) {margin-bottom: calc(40 / 670 * 100%);}
	.bl_col2-btn a {font-size:1.6rem;}

/*	矢印部分
-------------------------------------------------------------------------------------------------------- */
	.bl_col2-btn a::before {bottom: calc(130 / 240 * 100%);}
	.bl_col2-btn a::after {bottom: calc(90 / 240 * 100%);}

/* ========================================================================================================
	サステナビリティの取り組み
======================================================================================================== */
	.bl_sustainability-bg02 {
		padding: calc(80 / 750 * 100%) 0 calc(40 / 750 * 100%);
		margin-bottom: calc(80 / 750 * 100%);
	}
	.bl_item-sustainability {width: 100%;}
	.bl_item-sustainability:not(:nth-last-of-type(1)) {margin-bottom: calc(60 / 670 * 100%);}
	.bl_item-sustainability.el_flex-column {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
	}

	.bl_item-sustainability .el_flex {display: block;}
	.bl_item-sustainability dt {
		padding: 20px 0 0;
		box-sizing: border-box;
		width: calc(240 / 670 * 100%);
		max-width: 120px;
		min-height: 100%;
	}

	.bl_item-sustainability figure {
		width: 100%;
		margin: 0 auto calc(60 / 360 * 100%);
	}

	.bl_item-sustainability dt span {font-size: 1.8rem;}
	.bl_item-sustainability:nth-of-type(1) figure {width: calc(160 / 280 * 100%);}
	.bl_item-sustainability:nth-of-type(2) figure {width: calc(160 / 280 * 100%);}
	.bl_item-sustainability:nth-of-type(3) figure {width: calc(148 / 280 * 100%);}
	.bl_item-sustainability dt span::after {display: none;}
	.bl_item-sustainability dd {
		margin: 10px 0 calc(50 / 670 * 100%);
		width: calc(430 / 670 * 100%);
		padding: 0 10px 0 0;
		box-sizing: border-box;
	}

	.bl_pdf-list {margin: 0;}
	.bl_pdf-list li {margin-top: calc(18 / 370 * 100%);}
	.bl_pdf-list a {
		display: block;
		width: 100%;
		padding: 5px 0 0;
		min-height: 28px;
	}

	.el_effort-content-top .bl_pdf-list .el_icon-pdf {padding-left: calc(30 / 325 * 100%);}

	.bl_bnner-box {
		width: calc(600 / 750 * 100%);
		margin: 0 auto calc(60 / 750 * 100%);
		max-width: 100%;
		background-position: right 40% top 0;
	}

	.bl_bnner-box a {
		display: block;
		padding: calc(60 / 750 * 100%) calc(40 / 750 * 100%);
		text-align: left;
	}

	.bl_bottom-link {
		width: calc(600 / 750 * 100%);
		min-width: auto;
		margin: 0 auto calc(80 / 750 * 100%);
		max-width: 100%;
		padding: calc(30 / 710 * 100%) 0;
	}

	.bl_bottom-link li {
		display: block;
		margin-right: calc(40 / 600 * 100%);
	}

	.bl_bottom-link li:nth-last-of-type(1) {margin-right: calc(40 / 600 * 100%);}
	.bl_bottom-link a {
		font-size: 1.6rem;
		padding: 0 20px;
	}

	.el_no-after .el_arrow-ellipse a {
		padding: 0.4rem 2.3rem 0.4rem 2.3rem;
		font-size: 1.5rem;
	}
/*	矢印部分
-------------------------------------------------------------------------------------------------------- */
	.bl_bottom-link a::before {bottom: calc(140 / 240 * 100%);}
	.bl_bottom-link a::after {bottom: calc(64 / 240 * 100%);}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	トップメッセージ
======================================================================================================== */
	.message {overflow:hidden}
	.el_headline_lv04,
	.bl_content-inner-box > .bl_contents h4,
	.bl_content-inner-box > .bl_contents .el_headline_lv04.bl_w100 {
		font-size: 1.6rem;
		margin-bottom: calc(12 / 690 * 100%);
	}

	.bl_content-inner-box > .bl_contents .bl_w100 {margin-bottom: calc(12 / 690 * 100%);}

	.el_message-img {
		width: calc(250 / 750 * 100%);
		float:right;
		margin: 0 0 20px 20px;
	}

	.el_message-img figcaption {width: calc(188 / 250 * 100%);}
	.el_message-text {width:auto;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	サステナビリティ方針
======================================================================================================== */
	.bl_first-read-annotation {margin-bottom: calc(44 / 690 * 100%);}
	.el_pphilosophy {width:100%;}

/* ========================================================================================================
	国連グローバル・コンパクトとSDGs
======================================================================================================== */
	.bl_first-read-annotation.el_other {margin-bottom: calc(66 / 690 * 100%);}
	.el_other-item {width:100%;}
	.el_other-item:nth-of-type(1) {margin-bottom: calc(60 / 690 * 100%);}
	.el_other-item:nth-of-type(1) img {
		width:calc(200 / 345 * 100%);;
		margin: 0 auto calc(28 / 690 * 100%);
	}

	.el_other-item + .el_other-item {width:100%;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	マテリアリティ（重要課題）
======================================================================================================== */
	.bl_attempt-list li,th {line-height: 1.2;}
	.bl_materiality-scroll {overflow-x: auto;}
	.bl_materiality-scroll > img {width: 600px;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	推進体制
======================================================================================================== */
	.bl_materiality-box {margin-bottom: calc(90 / 750 * 100%);}
	.bl_promotion-system .bl_first-read-annotation {margin: 0 0 calc(68 / 750 * 100%);}
	.bl_tms-basic-policy dd {margin-bottom: calc(52 / 750 * 100%);}
	.el_sustainability-scroll img {width:100%;}
/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	取り組み事例
======================================================================================================== */
	.bl_effort-example {
		width:100%;
		min-height: auto;
		margin: 0 auto calc(88 / 690 * 100%);
		padding:0;
		position: relative;
		padding-top:calc(345 / 690 * 100%);
		background-size: 100% auto;
	}

	.bl_effort-example:nth-of-type(1) {margin-top: calc(44 / 690 * 100%);}

/*	背景白枠部分
-------------------------------------------------------------------------------------------------------- */
	.bl_effort-content {
		width:100%;
		min-height: auto;
		top: 100%;
		background: rgba(255,255,255,0.85);
		padding:calc(45 / 690 * 100%) calc(20 / 690 * 100%) calc(24 / 690 * 100%);
		box-sizing: border-box;
	}



/*	タイトル
-------------------------------------------------------------------------------------------------------- */
/* サブタイトル */
	.el_effort-sub-title {margin-left: 10px;}

	.el_effort-sub-title::before,
	.el_effort-sub-title::after {width: 8px;}
	.el_effort-sub-title::before {left:-8px;}
	.el_effort-sub-title::after {right:-8px;}

/*	コンテンツテキスト
-------------------------------------------------------------------------------------------------------- */
	.el_effort-text {margin: calc(32 / 650 * 100%) 0;}

/*	PDFやテキストリンク
-------------------------------------------------------------------------------------------------------- */
	.el_effort-content-top .bl_pdf-list li {margin: 0 0 calc(36 / 650 * 100%);}

/*	SDGsアイコンリスト
-------------------------------------------------------------------------------------------------------- */
	.bl_sdgs-icon-list {width:calc(392 / 404 * 100%);}
	.el_effort-sdgs-icon {width: calc(56 / 392 * 100%);}

	.el_effort-example-img01 {background:url(../../img/sustainability/sdgs/img_effort_example01.jpg) left top / 100% no-repeat;}
	.el_effort-example-img02 {background:url(../../img/sustainability/sdgs/img_effort_example02.jpg) left top / 100% no-repeat;}
	.el_effort-example-img03 {background:url(../../img/sustainability/sdgs/img_effort_example03.jpg) left top / 100% no-repeat;}
	.el_effort-example-img04 {background:url(../../img/sustainability/sdgs/img_effort_example04.jpg) left top / 100% no-repeat;}
	.el_effort-example-img05 {background:url(../../img/sustainability/sdgs/img_effort_example05.jpg) left top / 100% no-repeat;}
	.el_effort-example-img06 {background:url(../../img/sustainability/sdgs/img_effort_example06.jpg) left top / 100% no-repeat;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	SDGs Topics
======================================================================================================== */
	.ly_archive-area {width: calc(600 / 690 * 100%);}
	.bl_archive-list {width: 100%;}

	.bl_sdgs-item-list {
		width: 100%;
		margin-top: calc(50 / 690 * 100%);
	}

	.bl_sdgs-item-box {
		width: 100%;
		margin: calc(50 / 600 * 100%) 0 0;
	}

	.bl_sdgs-item-box:nth-of-type(2),
	.bl_sdgs-item-box:nth-of-type(3) {margin-top: calc(100 / 600 * 100%)}

	.el_sdgs-img {
		margin-bottom: calc(30 / 600 * 100%);
		max-width: 100%;
	}

	.el_sdgs-item-title {
		display: block;
		height: auto;
		overflow: visible;
		align-items: center;
	}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み 基本的な考え方
======================================================================================================== */
.el_clear {overflow:hidden;}
.el_float-left {
	width: calc(169 / 690 * 100%);
	max-width: 100%;
	float: left;
	margin: 0 calc(40 / 690 * 100%) 0 0;
}

.el_clear .el_float-right {
    width: calc(338 / 690 * 100%);
    max-width: 338px;
    float: right;
    margin: 0 0 0 calc(20 / 676 * 100%);
}

.el_certification-data {width: 100%;}
.el_nowrap {
	white-space: nowrap;
	font-size: 1.8rem;
}

.el_img-w90 {
	width: 100%;
	max-width: 100%;
	margin:calc(40 / 690 * 100%) auto 0;
}

.bl_gray-box .el_numbering li  {
	padding-left:1.5em;
	text-indent: -1.5em;
}

/* 四角い枠共通
-------------------------------------------------------------------------------------------------------- */
/*
	四角い枠は.bl_col03の中に.el_item03を入れる

	■.bl_col03の横幅は.bl_col03のclassに一緒に以下を記述
	.el_inner-width	：少し内側に入ったレイアウト
	.el_tow-col		：2カラムのレイアウト

	■flexの調整は.bl_col03のclassに一緒に以下を記述
	.el_flex-center		：センターよせ
	.el_flex-between	：両端よせ

	■テキストの位置は.bl_contents配下の要素に下記を記述すればたぶん効くはず･･･
	.bl_contents .el_text-left {text-align: left;}
	.bl_contents .el_text-center {text-align: center;}
	.bl_contents .el_text-right {text-align: right;}
*/



.el_item03 {
	border: 1px solid #c3c3c3;
	width:calc(580 / 690 * 100%);
	max-width: auto;
	margin: 0 auto calc(50 / 690 * 100%);
	padding: calc(36 / 580 * 100%) 20px calc(22 / 580 * 100%);
	box-sizing: border-box;
}

.el_item03:nth-of-type(3n) {margin-right: auto;}
.el_item03:nth-last-of-type(1) {margin-right: auto;}
.el_item03:nth-of-type(1) {margin-top: 0;}
.el_item03:nth-of-type(2),
.el_item03:nth-of-type(3) {margin-top: 0}

/* アイコン */
.el_top-icon {
	width: calc(80 / 500 * 100%);
	max-width: 100%;
	margin: 0 auto 6px;
}

/* テキスト */
.bl_col02 .bl_definition-list dt {margin-bottom: 5px;}

[class*="_definition-list"] dt {
	font-size:1.5rem;
	font-weight: 500;
	margin-bottom: calc(60 / 500 * 100%);
}

.bl_col02 bl_definition-list dt::after {display: none;}

/* bl_col03の幅
-------------------------------------------------------------------------------------------------------- */
.bl_contents .el_inner-width {
	width: calc(580 / 690 * 100%);
	max-width: 100%;
	margin: 0 auto calc(50 / 690 * 100%);
}

.bl_contents .el_tow-col {
	width: calc(580 / 690 * 100%);
	max-width: 100%;
	margin: 0 auto calc(50 / 690 * 100%);
}

.el_inner-width .el_item03,
.el_tow-col .el_item03 {width: 100%;}

.el_tow-col .el_item03 {margin: 32px 0 0;}
.el_tow-col .el_item03:nth-of-type(1),
.el_tow-col .el_item03:nth-of-type(2) {margin: calc(50 / 690 * 100%) 0 0;}

/* 罫線付きカラム共通
-------------------------------------------------------------------------------------------------------- */
.el_box-line-bottom {
	border-bottom: none;
	margin-bottom: calc(60 / 690 * 100%);
}

.el_box-left,
.el_box-center,
.el_box-right {
	width: 100%;
	padding: 0 0 calc(60 / 690 * 100%);
	margin-bottom: calc(64 / 690 * 100%);
	border-bottom: 1px solid #c3c3c3;
}

[class*="el_inner-col0"] {
	box-sizing: border-box;
	border-right: none;
}

[class*="el_inner-col0"] dd {
	margin-bottom: calc(26 / 690 * 100%);
}

.el_last-area span {
	display: block;
	color:#dd594d;
	font-size: 1.5rem;
	margin-bottom: 2px;
}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み 人材育成・キャリア開発支援
======================================================================================================== */
	.bl_pdf-list.el_career-support-pdf li {margin:calc(18 / 690 * 100%) 0 0;}
	.bl_pdf-list.el_career-support-pdf .el_icon-pdf {padding-left: calc(60 / 690 * 100%);}
	.bl_content-inner-box .bl_pdf-list.el_career-support-pdf .el_icon-pdf {padding-left: calc(60 / 570 * 100%);}
	.bl_content-inner-box > .bl_contents {width:100%;}
	.el_ol-indent-2rem span:nth-of-type(1) {
		display: block;
		width: calc(150 / 690 * 100%);
	}

	.el_ol-indent-2rem span:nth-last-of-type(1) {
		width: calc(100% - (150 / 690 * 100%));
		padding-left:1em;
		text-indent: -1em;
	}

	#CareerSupport .el_mb60 > p {margin-bottom: 0;}
	.bl_content-inner-box p {margin-bottom: 0;}
	.bl_content-inner-box > .bl_contents .el_btm {margin-bottom: 2rem;}
	.el_sustaina-mb30 {margin-bottom:calc(32 / 690 * 100%);}
	.el_sustaina-mb40 {margin-bottom:calc(40 / 690 * 100%);}
	.el_sustaina-mb60 {margin-bottom:calc(80 / 690 * 100%);}
	.el_sp-sustaina-mb60 {margin-bottom:calc(80 / 690 * 100%);}
	.bl_content-inner-box > .bl_contents.el_sustaina-mb40 {margin-bottom:calc(40 / 690 * 100%);}
/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み 労働安全と健康経営
======================================================================================================== */
.bl_sus-left-content,
.bl_sus-right-content {
	width:100%;
}

.bl_gray-box {padding: calc(40 / 690 * 100%) calc(48 / 690 * 100%);}
.bl_gray-box .el_headline_lv04 {margin-bottom: calc(40 / 1152 * 100%);}

.bl_gray-box li {
	padding-left: 1em;
	text-indent: -1em;
}

.el_gray-ol-list .el_gray-list-text {
	padding-left: 0;
	text-indent:0;
}

.el_gray-list + .el_gray-list {margin-top: 2rem;}
.bl_overtime-ransition {margin-top: calc(20 / 690 * 100%);}
.bl_content-inner-box > .bl_contents:nth-last-of-type(2) {margin-bottom: calc(40 / 690 * 100%);}
.bl_content-inner-box .bl_contents.el_employment.el_sustaina-mb40 + .bl_contents.el_employment.el_sustaina-mb40 {margin-bottom: calc(40 / 690 * 100%);}
.bl_content-inner-box .bl_contents.el_sustaina-mb40 + .bl_contents.el_sustaina-mb40 {margin-bottom: 0;}
[class*="bl_sus-"]:nth-last-of-type(2) {margin-bottom: calc(40 / 690 * 100%);}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	全社員総活躍企業への取り組み 労働安全と健康経営
======================================================================================================== */
.bl_pdf-list.el_career-support-pdf.el_work-life-list li {margin-right:0;}
.el_img-w614 {
	width: 100%;
	margin:calc(40 / 690 * 100%) auto 0;
}

.el_work-life-table th:nth-of-type(1) {
	width: calc(225 / 570 * 100%);
}

.el_work-life .bl_pdf-list {
	margin-top: 7px;
}

.el_work-life .bl_pdf-list {
	width:100%;
}

.bl_certification-table {overflow-x: auto;}
/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	ワーク・ライフ・インテグレーションの推進
======================================================================================================== */
.bl_content-inner-box .bl_contents.el_sustaina-mb40 + .bl_contents.el_sustaina-mb40 {margin-bottom: 0;}
.el_lead-bottom {margin-bottom:2rem}
.el_arrow-ellipse + .el_arrow-ellipse {margin: 2rem 0 0;}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	ダイバーシティの推進
======================================================================================================== */
.el_divercity-table .el_top-list {
	white-space: normal;
	padding: 15px 16px 9px;
}
.el_divercity-table td {padding: 15px 0 9px;}
/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	情報開示の考え方
======================================================================================================== */
	.bl_group-box {padding-bottom: calc(60 / 690 * 100%);}

	.el_h3-vertical-headline {
		font-size: 1.8rem;
		line-height: 1.7;
		padding: calc(16 / 750 * 100%) 0;
		width: 100%;
	}

	.el_vertical {
		writing-mode: horizontal-tb;
		white-space: normal;
	}

	.bl_content-area {
		display: block;
		width: calc(650 / 682 * 100%);
		margin: calc(40 / 682 * 100%) auto 0;
		padding: 0;
	}

	.bl_subgroup-box {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
	}

	.bl_subgroup-box + .bl_subgroup-box {
		margin-top: calc(60 / 650 * 100%);
		width: 100%;
	}

	.bl_subgroup-box + .bl_subgroup-box .bl_sub-inner {
		width: calc(100% - (124 / 996 * 100%));
		margin: 0 auto calc(25 / 996 * 100%);
	}

	.el_h4-vertical-headline {
		font-size:1.6rem;
		font-weight: 400;
		line-height: 1;
		padding: calc(14 / 650 * 100%) 0 calc(12 / 650 * 100%);
		box-sizing: border-box;
		text-align: center;
		width: 100%;
	}

	.bl_subgroup-box + .bl_subgroup-box .bl_sub-inner-wrap {display: block;}
	.bl_sub-inner-wrap {width: 100%;}
	.bl_sub-inner {
		display: block;
		width: calc(558 / 646 * 100%);
		margin: calc(25 / 996 * 100%) auto 0;
	}

	.el_hr + .bl_sub-inner {margin-top:  calc(30 / 558 * 100%);}

	.bl_box-left {
		width: calc(558 / 558 * 100%);
		box-sizing: border-box;
		display: flex;
		border:none;
		border-bottom: 1px solid #b3b3b3;
		padding-bottom: calc(25 / 558 * 100%);
		margin-bottom: 0;
		justify-content: left;
		min-height: auto;
		margin-top: calc(25 / 558 * 100%);
	}

	.bl_box-left figure {
		width: calc(60 / 302 * 100%);
		margin-right: calc(20 / 302 * 100%);
	}


	.el_h5-headline {font-size: 1.6rem;}

	.bl_box-right {
		width: 100%;
		padding: calc(30 / 558 * 100%) 0 calc(27 / 558 * 100%);
	}

	.bl_box-right a {white-space: nowrap;}
	.bl_think-box {display: block;}

	.bl_think-box .bl_sus-list-item {
		width: 100%;
		margin-top: calc(30 / 690 * 100%);
	}

	.bl_think-box .bl_sus-list-item:nth-of-type(1) {
		margin-top: calc(70 / 690 * 100%);
	}

	.bl_think-box .bl_sus-list-item:nth-last-of-type(1) {
		margin-top: calc(30 / 690 * 100%);
	}

	.el_hr {
		width: calc(100% - 30px);
		margin: 0 auto;
		border: 1px solid #ccc;
		height: 2px;
		box-sizing: border-box;
	}

/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	CSRレポート
======================================================================================================== */
.el_csr-this-year-img {
	width: calc(450 / 690 * 100%);
	margin: 0 auto;
}

.bl_csr-dl-box {width: 100%;}

.el_csr-this-yea-dl {
	width: calc(450 / 690 * 100%);
	display: block;
	font-size: 1.4rem;
	margin: calc(40 / 690 * 100%) auto 0;
	padding: 6px calc(18 / 690 * 100%);
}

.bl_dl-data {margin-top:calc(40 / 690 * 100%);}
.bl_back-no {
	flex-wrap: wrap;
	justify-content: space-between;
}

.el_back-no-list {
	width: calc(312 / 690 * 100%);
	margin: 0 0 calc(64 / 690 * 100%);
}

.el_back-no-list:nth-of-type(1) {margin-top: 0;}
.el_back-no-list:nth-of-type(2) {margin-top: 0;}
.el_back-no-list:nth-last-of-type(1) {margin-right: 0;}

.el_scr-img {
	border: 1px solid #b6b6b6;
}

.el_scr-title {
	display: block;
	text-align: center;
	margin-top: calc(40 / 1200 * 100%)
}


/* ========================================================================================================
	サステナビリティ
	------------------------------------------------------------------------------------------------------
	認証・認定一覧
======================================================================================================== */
.bl_certification-block {margin-bottom: calc(40 / 690 * 100%)}

.bl_certification-block + .bl_certification-block {
	padding-top:calc(40 / 690 * 100%);
}

.el_certification-img {
	width: calc(200 / 690 * 100%);
	float: left;
	margin:0 calc(40 / 690 * 100%) calc(40 / 690 * 100%) 0;
}

.el_certification-img img {
	margin: 0 auto;
}

.el_h100 {
	max-height:100px;
	width: auto;
}

.bl_certification-spec {
	width: 100%;
	float: none;
}

/* ========================================================================================================
	モーダル上書き用CSS
======================================================================================================== */
	.with-featherlight .featherlight .featherlight-content {
		overflow: initial;
		width: 90%;
	}
	.with-featherlight .featherlight .featherlight-close-icon {
		top: -50px;
		font-size: 1.8rem;
		width: 50px;
		height: 50px;
	}

	.featherlight-previous,
	.featherlight-next {
		width: 50px;
		height: 50px;
		font-size: 1.8rem;
		line-height: 50px;
		top: calc(100% + 10px);
	}

	.featherlight-previous {left:0;}
	.featherlight-next {right:0;}

	h4.el_headline_lv03_ver03 {
		font-size: 1.8rem;
		font-weight: 500;
		margin-bottom: calc(40 / 690 * 100%);
	}

}

