/* margin -[module]-
----------------------------------------*/
/* top */
.mt8 {
	margin-top: 8px !important
}

.mt16 {
	margin-top: 16px !important
}

.mt24 {
	margin-top: 24px !important
}

.mt32 {
	margin-top: 32px !important
}

.mt40 {
	margin-top: 40px !important
}

.mt48 {
	margin-top: 48px !important
}

.mt56 {
	margin-top: 56px !important
}

.mt64 {
	margin-top: 64px !important
}

.mt72 {
	margin-top: 72px !important
}

.mt80 {
	margin-top: 80px !important
}

.mt88 {
	margin-top: 88px !important
}

.mt96 {
	margin-top: 96px !important
}

.mt104 {
	margin-top: 104px !important
}

.mt112 {
	margin-top: 112px !important
}

.mt120 {
	margin-top: 120px !important
}

/* bottom */
.mb8 {
	margin-bottom: 8px !important
}

.mb16 {
	margin-bottom: 16px !important
}

.mb24 {
	margin-bottom: 24px !important
}

.mb32 {
	margin-bottom: 32px !important
}

.mb40 {
	margin-bottom: 40px !important
}

.mb48 {
	margin-bottom: 48px !important
}

.mb56 {
	margin-bottom: 56px !important
}

.mb64 {
	margin-bottom: 64px !important
}

.mb72 {
	margin-bottom: 72px !important
}

.mb80 {
	margin-bottom: 80px !important
}

.mb88 {
	margin-bottom: 88px !important
}

.mb96 {
	margin-bottom: 96px !important
}

.mb104 {
	margin-bottom: 104px !important
}

.mb112 {
	margin-bottom: 112px !important
}

.mb120 {
	margin-bottom: 120px !important
}

ul.eco li {
	width: 565px;
	float: left;
}

ul.eco li.iHead {
	width: 12px;
}

p.communication_subP {
	font-size: 12px;
}

.indent_text {
	padding-left: 1em;
	text-indent: -1em;
}
.indent_list {
    list-style: disc;
    padding-left: 1.2rem;
    font-size: 1.2rem;
	margin-top: 1.2rem;
}
.indent_list.-sup {
  list-style: none;
  padding-left: 1.8rem;
}
.indent_list.-sup li {
  position: relative;
}
.indent_list.-sup li sup {
  position: absolute;
  top: 0;
  left: -1.8rem;
}
.indent_list.-kome {
  list-style: none;
  padding-left: 1.8rem;
}
.indent_list.-kome li {
  position: relative;
}
.indent_list.-kome li:before {
  position: absolute;
  top: 0;
  left: -1.8rem;
  content: '※';
}
.indent_list.-type-1 {
  list-style: none;
  padding-left: 5rem;
  font-size: 1.6rem;
}
.indent_list.-type-1 li {
  position: relative;
}
.indent_list.-type-1 li:not(:last-child) {
  margin-bottom: 1.6rem;
}
.indent_list.-type-1 li .indent_list_marker {
  position: absolute;
  top: 0;
  left: -5rem;
}

/*

 unoList
----------------------------------------*/

.unoList {
	margin: 0 0 48px 5px;
}

.unoList li {
	margin: 0 0 5px 0;
	padding: 0 0 0 15px;
	background: url(/assets/img/csr/co_ic_14.gif) left top no-repeat;
	background-position: 0 10.5px;
	/* NN 7.x */
}


/* ------------------------------------------------------------

 ▼ SP | Preset

------------------------------------------------------------ */
@media (max-width: 960px) {

	/*
	 main -[module]-
	----------------------------------------*/
	#main {
		margin-bottom: 40px;
		margin-top: 40px
	}

	#main>* {
		margin-right: 16px;
		margin-left: 16px;
	}

	/* lead */
	#lead {
		margin-bottom: 40px;
	}

	/*
	 font-size -[module]-
	----------------------------------------*/
	.fsL {
		font-size: 2.6rem
	}

	.fsM {
		font-size: 1.6rem
	}

	.fsS {
		font-size: 1.4rem
	}

	/*
	 heading -[module]-
	----------------------------------------*/
	/* component-lv1 */
	.heading[component="lv1"] {
		font-size: 2.6rem;
		font-weight: bold;
		color: #333;
		padding: 16px;
	}

	/* component-lv2 */
	.heading[component="lv2"] {
		font-size: 2.6rem;
		color: #333;
		line-height: 1.25;
		margin-bottom: 24px;
		font-size: min(6.3vw, 2.6rem);
		font-weight: bold;
	}

	.heading[component="lv2"]>span {
		-webkit-box-flex: 1;
		flex: 1;
	}

	.heading[component="lv2"]+.paragraph {
		margin-bottom: 24px;
	}

	/* component-lv3 */
	.heading[component="lv3"] {
		font-size: 1.6rem;
		font-weight: bold;
	}

	/*
	 background-color -[module]-
	----------------------------------------*/
	/* base */
	[bg-color="base"] {
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding: 40px 16px !important;
		padding-bottom: 120px !important;
	}

	.text-green {
		color: #CC0033 !important;
	}

	/*
		 article -[module]-
		----------------------------------------*/
	.article+.article {
		margin-top: 48px;
	}

	/*
		 definition -[module]-
		----------------------------------------*/
	.definition[component] .team {
		font-size: 1.6rem;
		line-height: 1.5;
	}

	.definition[component] .description {
		font-size: 1.4rem;
	}

	/* component-03 */
	.definition[component="03"]>*+* {
		margin-top: 16px;
	}

	.definition[component="03"]>.list {
		position: relative;
		height: 100%;
	}

	.definition[component="03"]>.list::after {
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		background-color: rgba(0, 0, 0, 0.12);
		margin-top: 16px;
	}

	.definition[component="03"]>.list+.list {
		margin-top: 16px;
	}

	.definition[component="03"] .team {
		font-size: 1.6rem;
		font-weight: bold;
		color: #333;
	}

	.definition[component="03"] .description {
		font-size: 1.6rem;
		color: #333;
		margin-top: 4px;
	}

	.definition[component="03"] .description .link {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
	}

	.definition[component="03"] .description .link:hover~p {
		text-decoration: underline;
	}

	.definition[component="03"] .description .image {
		margin: 8px auto;
		padding: 0 16px;
	}

	.definition[component="03"] .description .image>img {
		display: block;
		width: 100%;
		height: auto;
	}

	.definition[component="03"] .description._decimal {
		counter-reset: number;
	}

	.definition[component="03"] .description .paragraph {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
	}

	.definition[component="03"] .description._decimal .paragraph {
		list-style-type: decimal;
		position: relative;
		height: 100%;
		padding-left: 1.1em;
	}

	.definition[component="03"] .description._decimal .paragraph::before {
		counter-increment: number;
		content: counter(number) '\002e';
		position: absolute;
		top: 0;
		left: 0;
	}

	.definition[component="03"] .description._decimal .paragraph+.paragraph {
		margin-top: 4px;
	}

	.definition[component="03"] .description .paragraph>span {
		display: block;
		margin-left: 32px;
	}

	.definition[component="03"] .note {
		font-size: 1.4rem;
		color: #707070;
	}

	.definition[component="03"] .note::before {
		content: '\00203b';
	}

	/*
	 item -[module]-
	----------------------------------------*/
	.item[component] img.image {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[component] .data {
		position: relative;
		height: 100%;
	}

	.item[component] .data>.link {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
	}

	/* component-06 */
	.item[component="06"] .list>li+li {
		margin-top: 40px;
	}

	.item[component="06"] .wrap {
		position: relative;
		border-radius: 4px;
		width: 100%;
		height: 100%;
		background-color: #f2f2f2;
		box-shadow:
			0 1px 1px 0 rgba(66, 66, 66, 0.08), 0 1px 3px 1px rgba(66, 66, 66, 0.16);
		overflow: hidden;
		transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
	}

	.item[component="06"] .wrap:hover {
		box-shadow:
			0 1px 3px 1px rgba(66, 66, 66, 0.2), 0 2px 8px 4px rgba(66, 66, 66, 0.1);
	}

	.item[component="06"] .columnInner {
		border-top: 8px solid #CC0033;
	}

	.item[component="06"] .columnInnerEq1 {
		background-color: #fff;
		padding: 16px;
	}

	.item[component="06"] .columnInnerEq1 .figure {
		width: 61.8%;
	}

	.item[component="06"] .columnInnerEq1 .figure>img {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[component="06"] .columnInnerEq1 .figure+* {
		margin-top: 16px;
	}

	.item[component="06"] .columnInnerEq2 {
		padding: 16px;
	}

	.item[component="06"] .columnInnerEq2 .description {
		font-size: 1.4rem;
	}

	/* ------------------------------------------------------------

		SP | cnt_csr_backnum

	------------------------------------------------------------ */
	/*
	 article -[module]-
	----------------------------------------*/
	.backnumber .article>.inner+.inner {
		margin-top: 40px;
	}


	/*
	 item -[layout]-
	----------------------------------------*/
	.backnumber .item .icon._pdf {
		font-size: 1.4rem;
		margin-left: 8px;
		padding: 0 6px;
		color: #CC0033;
		border: 1px solid #CC0033;
		border-radius: 2px;
	}

	.backnumber .item .linkIcon::before {
    display: none;
	}

	/* layout backnum */
	.item[layout="backnum"] .list>li+li {
		margin-top: 40px;
	}

	.item[layout="backnum"] .wrap {
		position: relative;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}

	.item[layout="backnum"] .figure>img {
		display: block;
		width: 80%;
		height: auto;
		margin: 0 auto;
	}

	.item[layout="backnum"] .figure+* {
		margin-top: 16px;
	}

	.item[layout="backnum"] .columnInnerEq2 {
		margin-top: 16px;
	}

	.item[layout="backnum"] .ruby {
		font-size: 1.4rem;
		color: #707070;
		margin-top: 8px;
	}

	.item[layout="backnum"] .description {
		font-size: 1.6rem;
		margin: 0;
	}

	.item[layout="backnum"] .description>a {
		color: #CC0033;
		text-decoration: underline;
		font-size: 1.4rem;
		font-weight: 300;
	}

	.item[layout="backnum"] .description>a:hover {
		color: #CC0033;
		text-decoration: none;
		opacity: 1.0;
	}

	/* ------------------------------------------------------------

	  SP | csr

	------------------------------------------------------------ */


	/*
	 component-csr
	----------------------------------------*/

	.heading[layout="csr"] {
		font-size: 2.0rem;
		margin: 24px 0 0 0;
		font-weight: bold;
		color: #333;
	}

	.heading[component="lv1"] {
		font-size: 2.6rem;
		font-weight: bold;
		color: #333;
		padding: 16px;
	}

	/* component-lv1 csr_label */
	.heading[layout="csr_label"] {
		font-size: 2.6rem;
		font-weight: bold;
		color: #333;
		padding: 0 16px 16px;
	}

	.heading[layout="csr_label_caption"] {
		font-size: 2.0rem;
		font-weight: bold;
		color: #333;
		padding: 16px 16px 0;
	}

	/*
	 item[layout="csr"]
	----------------------------------------*/

	.item[layout="csr"] .data a {
		display: block;
		color: #333;
		font-size: 1.6rem;
	}

	.item[layout="csr"] .data>.link {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
	}

	.item[layout="csr"] .list+.list {
		margin-top: 40px;
	}

	/*===================== ▼ 2023/10/13追加（更新）*/

	.item[layout="csr"] .list.torikumi_list_2,
	.item[layout="csr"] .list.torikumi_list_4 {
		margin-top: 10px;
	}

	/*===================== ▲ 2023/10/13追加（更新）*/

	.item[layout="csr"] .list>div+div {
		margin-top: 10px;
	}

	.item[layout="csr"] .wrap {
		position: relative;
		border-radius: 4px;
		width: 100%;
		height: 100%;
		box-shadow: 0 1px 1px 0 rgba(66, 66, 66, 0.08), 0 1px 3px 1px rgba(66, 66, 66, 0.16);
		overflow: hidden;
		transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
	}

	.item[layout="csr"] .wrap:hover {
		box-shadow: 0 1px 3px 1px rgba(66, 66, 66, 0.2), 0 2px 8px 4px rgba(66, 66, 66, 0.1);
	}

	/*===================== ▼ 2023/10/13追加（更新）*/

	.item[layout="csr"] .torikumi_list .wrap,
	.item[layout="csr"] .torikumi_list_2 .wrap {
		border: 2px solid #CC0033;
	}

	/*===================== ▲ 2023/10/13追加（更新）*/

	.item[layout="csr"] .columnInner {
		border-top: 8px solid #CC0033;
	}

	.item[layout="csr"] .columnInnerEq1 {
		background-color: #fff;
		padding: 16px;
		text-align: center;
	}

	.item[layout="csr"] .list.inner {
		margin: 0;
	}

	.item[layout="csr"] .list.mt48 {
		margin-top: 48px;
	}

	.item[layout="csr"] .columnLeft {
		width: 100% !important;
		margin: 0 !important;
	}

	.item[layout="csr"] .columnRight {
		width: initial !important;
		max-width: 150px !important;
		margin: 12px auto !important;
	}

	/*===================== ▼ 2023/10/11追加（更新）*/

	.item[layout="csr"] .torikumi_list .columnRight,
	.item[layout="csr"] .torikumi_list_2 .columnRight {
		width: initial !important;
		max-width: 100% !important;
		margin: 12px 0 0 0 !important;
	}

	.item[layout="csr"] .torikumi_list .columnRight .tAlignC_sp,
	.item[layout="csr"] .torikumi_list_2 .columnRight .tAlignC_sp {
		width: 100%;
		height: 190px;
		background-size: cover;
		background-repeat: no-repeat;
		background-clip: content-box;
		background-position-x: 98%;
		background-position-y: 58%;
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(1) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_16.jpg);
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(2) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_17.jpg);
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(3) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_18.jpg);
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(4) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_19.jpg);
	}

	.item[layout="csr"] .torikumi_list_2>div:nth-child(1) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_20.jpg);
	}

	/*===================== ▲ 2023/10/11追加（更新）*/


	.item[layout="csr"] .columnRight img {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[layout="csr"] .figure>img {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[layout="csr"] .columnInnerEq1 .figure+* {
		margin-top: 16px;
	}

	.item[layout="csr"] .columnInnerEq2 {
		padding: 16px;
	}

	.item[layout="csr"] .columnInnerEq2 .description {
		font-size: 1.4rem;
	}

	/* component-banner */

	.item[layout="csr_banner"] {
		margin-top: 0px;
		padding: 0 16px;
	}

	.item[layout="csr_banner"] a {
		display: block;
	}

	.item[layout="csr_banner"] .list+.list {
		margin-top: 24px;
	}

	.item[layout="csr_banner"] .list>li+li {
		margin-top: 24px;
	}

	.item[layout="csr_banner"] .list .image {
		display: block;
		width: 100%;
		height: auto;
	}

	/*
	 communicationBox
	----------------------------------------*/

	.communicationBox>a {
		display: block;
		text-decoration: none !important;
	}

	.communicationInner>dt {
		margin: 0;
		font-size: 1.4rem;
		line-height: 1.8;
		text-align: center;
		color: #fff;
		font-weight: bold;
	}

	.communicationBox._01 .communicationInner>dt {
		background: #317436;
	}

	.communicationBox._02 .communicationInner>dt {
		background: #265c84;
	}

	.communicationBox._03 .communicationInner>dt {
		background: #934046;
	}

	.communicationBox._04 .communicationInner>dt {
		background: #00636f;
	}

	.communicationInner>dd {
		margin: 0;
		padding: 18px 40px 26px 72px;
		color: #fff;
		font-size: 1.4rem;
		line-height: 1.5;
		font-weight: bold;
	}

	.communicationBox._01 .communicationInner>dd {
		background: #46833A url(/assets/img/csr/index_im_04.png) no-repeat 16px 50%;
	}

	.communicationBox._02 .communicationInner>dd {
		background: #3577BB url(/assets/img/csr/index_im_06.png) no-repeat 16px 50%;
	}

	.communicationBox._03 .communicationInner>dd {
		background: #CE4946 url(/assets/img/csr/index_im_08.png) no-repeat 16px 50%;
	}

	.communicationBox._04 .communicationInner>dd {
		background: #3D7D8A url(/assets/img/csr/index_im_10.png) no-repeat 16px 50%;
	}

	/*
	 news-icon
	----------------------------------------*/

	.linkIcon_map a {
		font-size: 1.4rem;
		padding: 0 0 0 20px;
		background: url(/assets/img/csr/co_ic_01.gif) 4px 0.5em no-repeat;
	}

	/*
	 tAlignC_sp
	----------------------------------------*/

	.tAlignC_sp {
		text-align: center;
	}

	/*
	 subscript
	----------------------------------------*/


	/* 下付き設定 */

	.subscript {
		font-size: 60%;
		line-height: 100%;
	}

	/*
	 visionBox
	----------------------------------------*/

	.visionBox {
		border: 1px solid #119dad;
		clear: both;
		box-sizing: border-box;
	}

	.visionBox.com1 {
		width: 58%;
		margin: 8px 4% 20px 0;
		float: left;
	}

	.visionBox.com2 {
		width: 38%;
		margin: 8px 0 20px 0;
		float: right;
		clear: none;
	}

	.visionBox.com3 {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin: 0 0 48px 0;
	}

	.visionBox dt {
		padding: 5px;
		background: #119dad;
		color: #fff;
		text-align: center;
		box-sizing: border-box;
	}

	.visionBox.com3 dt {
		width: 100%;
	}

	.visionBox.com3 dd {
		width: 100%;
		box-sizing: border-box;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.visionBox .textCenter {
		padding: 15px;
		display: -webkit-flex;
		display: flex;
		text-align: center;
		justify-content: center;
		align-items: center;
		min-height: 160px;
	}

	.visionBox .textCenter.text2 {
		font-weight: bold;
		font-size: 125%;
		padding: 15px;
		display: -webkit-flex;
		display: flex;
		text-align: center;
		justify-content: center;
		align-items: center;
		min-height: 160px;
	}

	.visionBox.com3 .textColumn {
		width: 50%;
		box-sizing: border-box;
		padding: 15px;
		border-right: 1px solid #119dad;
		border-bottom: 1px solid #119dad;
	}

	.visionBox.com3 .textColumn.last {
		border-right: none;
	}

	.visionBox.com3 .textColumn:last-child {
		border-bottom: none;
	}

	/*
	 image100
	----------------------------------------*/

	img.image100 {
		max-width: 100%;
		height: auto;
	}

	/*
	 report
	----------------------------------------*/

	.report {
		max-width: 541px;
		margin: auto;
	}

	.report a {
		position: relative;
		display: block;
		text-indent: 1em;
		line-height: 2em;
		color: #fff;
		font-size: 100%;
		background: #00b6ac;
	}

	.report a:hover {
		text-decoration: none;
		opacity: 0.5;
	}

	.report span {
		margin-left: 1em;
		padding: 1px 4px 0;
		position: relative;
		top: -2px;
		font-size: 71%;
		border: 1px solid #fff;
		border-radius: 2px;
	}

	/*
	 notesText
	----------------------------------------*/

	.notesText {
		margin: 0 0 48px 0;
		padding: 4px 0 0 0;
		background: url(/assets/img/csr/co_ln_01.gif) left top repeat-x;
	}

	.notesText>div {
		padding: 0 0 2px 0;
		background: url(/assets/img/csr/co_ln_01.gif) left bottom repeat-x;
	}

	.notesText .strong {
		color: #cc0000;
	}

	/*
	.ul[layout="csr"]
	----------------------------------------*/

	.ul[layout="csr"]>ul {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
	}

	.ul[layout="csr"] .iHead {
		width: 1.5em;
	}

	/*
	 table -[module]-
	----------------------------------------*/

	.table[layout="csr"] table {
		font-size: var(--font-size-S);
		border: 1px solid rgba(0, 0, 0, 0.12);
		width: 100%;
	}

	.table[layout="csr"] caption {
		font-size: var(--font-size-M);
		text-align: left;
		margin-bottom: 4px;
	}

	.table[layout="csr"] th,
	.table[layout="csr"] td {
		border: 1px solid rgba(0, 0, 0, 0.12);
		padding: 8px;
	}

	.table[layout="csr"] th {
		font-weight: bold;
	}

	.table[layout="csr"] thead th {
		color: #fff;
		background-color: #707070;
	}

	.table[layout="csr"] tbody th {
		background-color: #f2f2f2;
	}

	.table[layout="csr"] .date {
		font-size: var(--font-size-S);
		text-align: right;
		margin-top: 4px;
	}

	.table[layout="csr"] .date::before {
		content: '\002a';
	}

	/*
	 item -[layout]-
	----------------------------------------*/

	.item .icon._pdf {
		font-size: 1.4rem;
		margin-left: 8px;
		padding: 0 6px;
		color: #CC0033;
		border: 1px solid #CC0033;
		border-radius: 2px;
	}

	.item .linkIcon::before {
		content: '';
		vertical-align: middle;
		display: inline-block;
		width: 1em;
		height: 1em;
		margin-right: 4px;
		background-image: url(/assets/img/csr/co_ic_08.gif);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}

	.item [data-icon="pdf"]::before {
		content: '';
		vertical-align: middle;
		display: inline-block;
    width: 1.8rem;
    height: calc(1.8rem / (1.9 / 2.3));
    margin: -.4rem .5rem 0 .5rem;
		background-image: url(/assets/img/csr/icon_pdf-red.svg);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}

	.text-green {
		color: #CC0033 !important;
	}

	.backnum_link {
		padding-left: 0;
		font-size: 1.4rem;
	}

	/* table */
	.csr_table {
		display: block;
		table-layout: fixed;
	}

	.csr_table tr:first-child td {
		display: table-cell;
		padding: 5px;
		background: #119dad;
		color: #fff;
		text-align: center;
		box-sizing: border-box;
	}

	.csr_table td {
		display: table-cell;
		box-sizing: border-box;
		padding: 15px;
		border: 1px solid #119dad;
	}

	/* トップメッセージ(更新21.10.08) */
	.float_right {
		float: none;
		text-align: center;
		margin: 0;
		margin-bottom: 48px;
	}

}

/* ------------------------------------------------------------

 ▲ SP | Preset

------------------------------------------------------------ */
/* ------------------------------------------------------------

 ▼ PC | Preset

------------------------------------------------------------ */
@media (min-width: 960px) {

	/*
	 main -[module]-
	----------------------------------------*/
	#main {
		display: block;
		width: 960px;
		margin-right: auto;
		margin-left: auto;
		margin-bottom: 80px;
		margin-top: 56px;
	}

	/* lead */
	#lead {
		margin-bottom: 56px;
	}

	/*
	 font-size -[module]-
	----------------------------------------*/
	.fsL {
		font-size: 3.0rem
	}

	.fsM {
		font-size: 1.6rem
	}

	.fsS {
		font-size: 1.4rem
	}

	/*
	 heading -[module]-
	----------------------------------------*/
	/* component-lv1 */
	.heading[component="lv1"] {
		font-size: 3.0rem;
		font-weight: bold;
		color: #333;
		width: 960px;
		margin: 48px auto 24px auto;
	}

	/* component-lv2 */
	.heading[component="lv2"] {
		font-size: 2.6rem;
		color: #333;
		line-height: 1.25;
		margin-bottom: 16px;
		font-weight: bold;
	}

	.heading[component="lv2"]>span {
		-webkit-box-flex: 1;
		flex: 1;
	}

	.heading[component="lv2"]+.paragraph {
		color: #707070;
		margin-top: -16px;
		margin-bottom: 48px;
	}

	/* component-lv3 */
	.heading[component="lv3"] {
		font-size: 1.6rem;
		font-weight: bold;
	}

	/*
	 column -[module]-
	----------------------------------------*/
	/* 2column */
	.column[data-column-pc="2"] {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin: -48px 0 0 -48px;
	}

	.column[data-column-pc="2"]>* {
		width: 456px;
		margin: 48px 0 0 48px !important;
	}

	/* 3column */
	.column[data-column-pc="3"] {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin: -39px 0 0 -39px;
	}

	.column[data-column-pc="3"]>* {
		width: 294px;
		margin: 39px 0 0 39px !important;
	}

	/*
		 article -[module]-
		----------------------------------------*/
	.article+.article {
		margin-top: 70px;
	}

	/*
		 definition -[module]-
		----------------------------------------*/
	.definition[component] .team {
		font-size: 1.6rem;
		line-height: 1.5;
	}

	.definition[component] .description {
		font-size: 1.4rem;
	}

	/* component-03 */
	.definition[component="03"]>*+* {
		margin-top: 24px;
	}

	.definition[component="03"] .list {
		position: relative;
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		height: 100%;
	}

	.definition[component="03"] .list::after {
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		background-color: rgba(0, 0, 0, 0.12);
		margin-top: 24px;
	}

	.definition[component="03"] .list+.list {
		margin-top: 24px;
	}

	.definition[component="03"] .team {
		font-weight: bold;
		color: #333;
	}

	.definition[component="03"] .description {
		font-size: 1.6rem;
		color: #333;
		-webkit-box-flex: 1;
		flex: 1;
		margin-left: 112px;
	}

	.definition[component="03"] .description._decimal {
		counter-reset: number;
	}

	.definition[component="03"] .description .link {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
	}

	.definition[component="03"] .description .link:hover~p {
		text-decoration: underline;
	}

	.definition[component="03"] .description .image {
		margin: 8px auto;
	}

	.definition[component="03"] .description .image>img {
		display: block;
	}

	.definition[component="03"] .description .paragraph {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
	}

	.definition[component="03"] .description._decimal .paragraph {
		list-style-type: decimal;
		position: relative;
		padding-left: 1.1em;
	}

	.definition[component="03"] .description._decimal .paragraph::before {
		counter-increment: number;
		content: counter(number) '\002e';
		position: absolute;
		top: 0;
		left: 0;
	}

	.definition[component="03"] .description._decimal .paragraph+.paragraph {
		margin-top: 4px;
	}

	.definition[component="03"] .description .paragraph>span {
		display: block;
		margin-left: 32px;
	}

	.definition[component="03"] .note {
		font-size: 1.4rem;
		color: #707070;
	}

	.definition[component="03"] .note::before {
		content: '\00203b';
	}

	/*
		 item -[module]-
		----------------------------------------*/
	.item[component] img.image {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[component] .data {
		position: relative;
		height: 100%;
	}

	.item[component] .data>.link {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
	}

	/* component-06 */
	.item[component="06"] .list>li+li {
		margin-top: 40px;
	}

	.item[component="06"] .wrap {
		position: relative;
		border-radius: 4px;
		width: 100%;
		height: 100%;
		background-color: #f2f2f2;
		box-shadow:
			0 1px 1px 0 rgba(66, 66, 66, 0.08), 0 1px 3px 1px rgba(66, 66, 66, 0.16);
		overflow: hidden;
		transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
	}

	.item[component="06"] .wrap:hover {
		box-shadow:
			0 1px 3px 1px rgba(66, 66, 66, 0.2), 0 2px 8px 4px rgba(66, 66, 66, 0.1);
	}

	.item[component="06"] .columnInner {
		border-top: 8px solid #CC0033;
	}

	.item[component="06"] .columnInnerEq1 {
		background-color: #fff;
		padding: 16px;
	}

	.item[component="06"] .columnInnerEq1 .figure {
		width: 61.8%;
	}

	.item[component="06"] .columnInnerEq1 .figure>img {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[component="06"] .columnInnerEq1 .figure+* {
		margin-top: 16px;
	}

	.item[component="06"] .columnInnerEq2 {
		padding: 16px;
	}

	.item[component="06"] .columnInnerEq2 .description {
		font-size: 1.4rem;
	}

	/* ------------------------------------------------------------

		  PC | cnt_csr_backnum

		------------------------------------------------------------ */
	/*
		 article -[module]-
		----------------------------------------*/
	.backnumber .article>.inner+.inner {
		margin-top: 40px;
	}


	/*
		 item -[layout]-
		----------------------------------------*/
	.backnumber .item .icon._pdf {
		font-size: 1.4rem;
		margin-left: 8px;
		padding: 0 6px;
		color: #CC0033;
		border: 1px solid #CC0033;
		border-radius: 2px;
	}

	.backnumber .item .linkIcon::before {
    display: none;
	}

	/* layout backnum */
	.item[layout="backnum"] .list>li+li {
		margin-top: 40px;
	}

	.item[layout="backnum"] .wrap {
		position: relative;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}

	.item[layout="backnum"] .figure>img {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[layout="backnum"] .figure+* {
		margin-top: 16px;
	}

	.item[layout="backnum"] .columnInnerEq2 {
		margin-top: 16px;
	}

	.item[layout="backnum"] .ruby {
		font-size: 1.4rem;
		color: #707070;
		margin-top: 8px;
	}

	.item[layout="backnum"] .description {
		font-size: 1.6rem;
		margin: 0;
	}

	.item[layout="backnum"] .description>a {
		color: #CC0033;
		text-decoration: underline;
		font-size: 1.4rem;
		font-weight: 300;
	}

	.item[layout="backnum"] .description>a:hover {
		color: #CC0033;
		text-decoration: none;
		opacity: 1.0;
	}

	/* ------------------------------------------------------------

	  PC | csr

	------------------------------------------------------------ */
	/*
	 component-csr
	----------------------------------------*/

	.heading[layout="csr"] {
		font-size: 2.0rem;
		margin: 24px 0 0 24px;
		font-weight: bold;
		color: #333;
	}

	/* component-lv1 csr_label */
	.heading[layout="csr_label"] {
		font-size: 3.0rem;
		font-weight: bold;
		color: #333;
		width: 960px;
		margin: 0 auto 24px;
	}

	.heading[layout="csr_label_caption"] {
		font-size: 2.0rem;
		font-weight: bold;
		color: #333;
		width: 960px;
		margin: 48px auto 0;
	}

	.heading[component="lv2"].mb0 {
		margin-bottom: 0;
	}

	/*
	 item[layout="csr"]
	----------------------------------------*/

	/*===================== ▼ 2023/10/13追加（更新）*/

	.item[layout="csr"] article.column_g-csr_wrap,
	.item[layout="csr"] article.column_g-csr_wrap .data,
	.item[layout="csr"] article.column_g-csr_wrap .data a,
	.item[layout="csr"] article.column_g-csr_wrap .list.inner {
		height: 100%;
	}

	/*===================== ▲ 2023/10/13追加（更新）*/

	.item[layout="csr"] .data a {
		display: block;
		color: #333;
		font-size: 1.6rem;
	}

	.item[layout="csr"] .data>.link {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
	}

	.item[layout="csr"] .list+.list {
		margin-top: 0px;
	}

	/*===================== ▼ 2023/10/13追加（更新）*/

	.item[layout="csr"] .list.torikumi_list_2 {
		margin-top: 48px;
	}

	/*===================== ▲ 2023/10/13追加（更新）*/

	.item[layout="csr"] .list>li+li {
		margin-top: 40px;
	}

	.item[layout="csr"] .wrap {
		position: relative;
		border-radius: 4px;
		width: 100%;
		height: 100%;
		box-shadow: 0 1px 1px 0 rgba(66, 66, 66, 0.08), 0 1px 3px 1px rgba(66, 66, 66, 0.16);
		overflow: hidden;
		transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
	}

	/*===================== ▼ 2023/10/13追加（更新）*/

	.item[layout="csr"] .torikumi_list .wrap,
	.item[layout="csr"] .torikumi_list_2 .wrap {
		border: 2px solid #CC0033;
	}

	/*===================== ▲ 2023/10/13追加（更新）*/

	.item[layout="csr"] .wrap:hover {
		box-shadow: 0 1px 3px 1px rgba(66, 66, 66, 0.2), 0 2px 8px 4px rgba(66, 66, 66, 0.1);
	}

	.item[layout="csr"] .columnInner {
		border-top: 8px solid #CC0033;
	}

	.item[layout="csr"] .columnInnerEq1 {
		background-color: #fff;
		padding: 16px;
	}

	.item[layout="csr"] .torikumi_list_3 .columnInnerEq1,
	.item[layout="csr"] .torikumi_list_4 .columnInnerEq1 {
		text-align: center;
	}

	/*===================== ▼ 2023/10/06追加（更新）*/

	/* .item[layout="csr"] .list.inner {
		margin: 0;
	} */
	.item[layout="csr"] .list.inner {
		margin: 0;
		align-items: center;
	}

  .item[layout="csr"] .list.inner.-type-1 {
    width: 620px;
    max-width: 96%;
    margin: 0 auto;
  }

  .item[layout="csr"] .list.inner.-type-1 img {
    width: auto;
    height: 194px;
  }

	/*===================== ▲ 2023/10/06追加（更新）*/

	.item[layout="csr"] .list.mt48 {
		margin-top: 48px;
	}

	.item[layout="csr"] .columnLeft {
		width: 59% !important;
		margin: 0 0 0 5% !important;
	}

	/*===================== ▼ 2023/10/11追加（更新）*/
	.item[layout="csr"] .torikumi_list .columnLeft {
		width: 45% !important;
		margin: 0 2% !important;
	}

	.item[layout="csr"] .torikumi_list_2 .columnLeft {
		width: 50% !important;
		margin: 0 !important;
	}

	/*===================== ▲ 2023/10/11追加（更新）*/

	.item[layout="csr"] .columnLeft .heading[component="lv3"] {
		margin-bottom: 12px;
	}

	.item[layout="csr"] .columnLeft .columnInnerEq1 {
		padding: 32px;
	}

	/*===================== ▼ 2023/10/06追加（更新）*/

	/* .item[layout="csr"] .columnRight {
		width: 17% !important;
		margin: 0 10% !important;
	} */
	.item[layout="csr"] .columnRight {
		width: 32% !important;
		margin: 0 4% 0 0 !important;
	}

	.item[layout="csr"] .torikumi_list .columnRight {
		width: 51% !important;
		margin: 0 !important;
	}

	.item[layout="csr"] .torikumi_list_2 .columnRight {
		width: 50% !important;
		margin: 0 !important;
	}

	/*===================== ▲ 2023/10/06追加（更新）*/
	/*===================== ▼ 2023/10/11追加（更新）*/

	.item[layout="csr"] .torikumi_list .columnRight .tAlignC_sp,
	.item[layout="csr"] .torikumi_list_2 .columnRight .tAlignC_sp {
		width: 100%;
		height: 183px;
		background-size: cover;
		background-repeat: no-repeat;
		background-clip: content-box;
		background-position: 100% center;
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(1) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_16.jpg);
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(2) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_17.jpg);
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(3) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_18.jpg);
	}

	.item[layout="csr"] .torikumi_list>div:nth-child(4) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_19.jpg);
	}

	.item[layout="csr"] .torikumi_list_2>div:nth-child(1) .columnRight .tAlignC_sp {
		background-image: url(/assets/img/csr/index_im_20.jpg);
	}

	/*===================== ▲ 2023/10/11追加（更新）*/

	.item[layout="csr"] .columnRight img {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[layout="csr"] .figure>img {
		display: block;
		width: 100%;
		height: auto;
	}

	.item[layout="csr"] .columnInnerEq1 .figure+* {
		margin-top: 16px;
	}

	.item[layout="csr"] .columnInnerEq2 {
		padding: 16px;
	}

	.item[layout="csr"] .columnInnerEq2 .description {
		font-size: 1.4rem;
	}

	/*===================== ▼ 2023/11/17追加（更新）*/

	.item[layout="csr_banner"] .list>li {
		text-align: center;
	}

	.item[layout="csr_banner"] .ntt_list>li img {
		margin-bottom: 3px;
	}

	.item[layout="csr"] .torikumi_list .list.column.inner,
	.item[layout="csr"] .torikumi_list_2 .list.column.inner {
		position: relative;
	}

	.item[layout="csr"] .torikumi_list .columnLeft,
	.item[layout="csr"] .torikumi_list_2 .columnLeft {
		width: 100% !important;
		margin: initial !important;
		background: linear-gradient(to right, rgba(255, 255, 255, 1) 10%, rgba(255, 255, 255, .8) 50%, rgba(255, 255, 255, 0) 100%);
		z-index: 3;
	}

	.item[layout="csr"] .torikumi_list .columnRight,
	.item[layout="csr"] .torikumi_list_2 .columnRight {
		position: absolute;
		width: 100% !important;
	}

	.item[layout="csr"] .torikumi_list .columnInnerEq1,
	.item[layout="csr"] .torikumi_list_2 .columnInnerEq1 {
		background-color: initial;
		width: 50%;
		padding-left: 30px !important;
	}

	/*===================== ▲ 2023/11/17追加（更新）*/


	/* component-banner */

	.item[layout="csr_banner"] a {
		display: block;
	}

	.item[layout="csr_banner"] .list {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
		margin: -16px 0 0 -16px;
		justify-content: center;
	}

	.item[layout="csr_banner"] .list+.list {
		margin-top: 40px;
	}

	.item[layout="csr_banner"] .list>li {
		width: 310px;
		margin: 16px 0 0 16px;
	}

	.item[layout="csr_banner"] .list .image {
		display: block;
		width: 100%;
		height: auto;
	}

	/*
	 communicationBox
	----------------------------------------*/

	.communicationBox>a {
		display: block;
		text-decoration: none !important;
	}

	.communicationInner>dt {
		margin: 0;
		font-size: 1.4rem;
		line-height: 1.8;
		text-align: center;
		color: #fff;
		font-weight: bold;
	}

	.communicationBox._01 .communicationInner>dt {
		background: #317436;
	}

	.communicationBox._02 .communicationInner>dt {
		background: #265c84;
	}

	.communicationBox._03 .communicationInner>dt {
		background: #934046;
	}

	.communicationBox._04 .communicationInner>dt {
		background: #00636f;
	}

	.communicationInner>dd {
		margin: 0;
		padding: 18px 0 18px 72px;
		color: #fff;
		font-size: 1.35rem;
		line-height: 1.5;
		font-weight: bold;
	}

	.communicationBox._01 .communicationInner>dd {
		background: #46833A url(/assets/img/csr/index_im_04.png) no-repeat 16px 50%;
	}

	.communicationBox._02 .communicationInner>dd {
		background: #3577BB url(/assets/img/csr/index_im_06.png) no-repeat 16px 50%;
	}

	.communicationBox._03 .communicationInner>dd {
		background: #CE4946 url(/assets/img/csr/index_im_08.png) no-repeat 16px 50%;
	}

	.communicationBox._04 .communicationInner>dd {
		background: #3D7D8A url(/assets/img/csr/index_im_10.png) no-repeat 16px 50%;
	}

	/*
	 news-icon
	----------------------------------------*/

	.linkIcon_map a {
		font-size: 1.4rem;
		padding: 0 0 0 20px;
		background: url(/assets/img/csr/co_ic_01.gif) 4px 0.5em no-repeat;
	}

	/*
	 subscript
	----------------------------------------*/


	/* 下付き設定 */

	.subscript {
		font-size: 60%;
		line-height: 100%;
	}

	/*
	 visionBox
	----------------------------------------*/

	.visionBox {
		border: 1px solid #119dad;
		clear: both;
		box-sizing: border-box;
	}

	.visionBox.com1 {
		width: 58%;
		margin: 8px 4% 20px 0;
		float: left;
	}

	.visionBox.com2 {
		width: 38%;
		margin: 8px 0 20px 0;
		float: right;
		clear: none;
	}

	.visionBox.com3 {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin: 0 0 48px 0;
	}

	.visionBox dt {
		padding: 5px;
		background: #119dad;
		color: #fff;
		text-align: center;
		box-sizing: border-box;
	}

	.visionBox.com3 dt {
		width: 100%;
	}

	.visionBox.com3 dd {
		width: 100%;
		box-sizing: border-box;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.visionBox .textCenter {
		padding: 15px;
		display: -webkit-flex;
		display: flex;
		text-align: center;
		justify-content: center;
		align-items: center;
		min-height: 100px;
	}

	.visionBox .textCenter.text2 {
		font-weight: bold;
		font-size: 125%;
		padding: 15px;
		display: -webkit-flex;
		display: flex;
		text-align: center;
		justify-content: center;
		align-items: center;
		min-height: 100px;
	}

	.visionBox.com3 .textColumn {
		width: 50%;
		box-sizing: border-box;
		padding: 15px;
		border-right: 1px solid #119dad;
		border-bottom: 1px solid #119dad;
	}

	.visionBox.com3 .textColumn.last {
		border-right: none;
	}

	.visionBox.com3 .textColumn:last-child {
		border-bottom: none;
	}

	/*
	 image100
	----------------------------------------*/

	img.image100 {
		max-width: 100%;
		height: auto;
	}

	/*
	 report
	----------------------------------------*/

	.report {
		max-width: 541px;
		margin: auto;
	}

	.report a {
		position: relative;
		display: block;
		text-indent: 1em;
		line-height: 2em;
		color: #fff;
		font-size: 100%;
		background: #00b6ac;
	}

	.report a:hover {
		text-decoration: none;
		opacity: 0.5;
	}

	.report span {
		margin-left: 1em;
		padding: 1px 4px 0;
		position: relative;
		top: -2px;
		font-size: 71%;
		border: 1px solid #fff;
		border-radius: 2px;
	}


	/*
	 notesText
	----------------------------------------*/

	.notesText {
		margin: 0 0 48px 0;
		padding: 4px 0 0 0;
		background: url(/assets/img/csr/co_ln_01.gif) left top repeat-x;
	}

	.notesText>div {
		padding: 0 0 2px 0;
		background: url(/assets/img/csr/co_ln_01.gif) left bottom repeat-x;
	}

	.notesText .strong {
		color: #cc0000;
	}

	/*
	.ul[layout="csr"]
	----------------------------------------*/

	.ul[layout="csr"]>ul {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
	}

	.ul[layout="csr"] .iHead {
		width: 1.5em;
	}

	/*
	 table -[module]-
	----------------------------------------*/

	.table[layout="csr"] table {
		font-size: var(--font-size-S);
		border: 1px solid rgba(0, 0, 0, 0.12);
		width: 100%;
	}

	.table[layout="csr"] caption {
		font-size: var(--font-size-M);
		text-align: left;
		margin-bottom: 4px;
	}

	.table[layout="csr"] th,
	.table[layout="csr"] td {
		border: 1px solid rgba(0, 0, 0, 0.12);
		padding: 8px;
	}

	.table[layout="csr"] th {
		font-weight: bold;
	}

	.table[layout="csr"] thead th {
		color: #fff;
		background-color: #707070;
	}

	.table[layout="csr"] tbody th {
		background-color: #f2f2f2;
	}

	.table[layout="csr"] .date {
		font-size: var(--font-size-S);
		text-align: right;
		margin-top: 4px;
	}

	.table[layout="csr"] .date::before {
		content: '\002a';
	}

	/*
	 item -[layout]-
	----------------------------------------*/

	.item .icon._pdf {
		font-size: 1.4rem;
		margin-left: 8px;
		padding: 0 6px;
		color: #CC0033;
		border: 1px solid #CC0033;
		border-radius: 2px;
	}

	.item .linkIcon::before {
		content: '';
		vertical-align: middle;
		display: inline-block;
		width: 1em;
		height: 1em;
		margin-right: 4px;
		background-image: url(/assets/img/csr/co_ic_08.gif);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}

	.item [data-icon="pdf"]::before {
		content: '';
		vertical-align: middle;
		display: inline-block;
    width: 1.8rem;
    height: calc(1.8rem / (1.9 / 2.3));
    margin: -.4rem .5rem 0 .5rem;
		background-image: url(/assets/img/csr/icon_pdf-red.svg);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}


	._03 {
		margin-top: -28px;
	}

	._04 {
		margin-top: -28px;
	}

	.news-ym {
		display: inline-block;
		width: 10em;
	}

	/* table */
	.csr_table {
		display: table;
		table-layout: fixed;
	}

	.csr_table tr:first-child td {
		display: table-cell;
		padding: 5px;
		background: #119dad;
		color: #fff;
		text-align: center;
		box-sizing: border-box;
	}

	.csr_table td {
		display: table-cell;
		box-sizing: border-box;
		padding: 15px;
		border: 1px solid #119dad;
	}

	/* トップメッセージ(更新21.10.08) */

	.top_message_h2 {
		margin-bottom: 48px !important;
	}

	.float_right {
		float: right;
		margin: 0 0 10px 45px;
	}

	/* サスティナビリティ憲章バナー（更新22.02.10) */
	.banner_sustainability {
		margin-bottom: 20px;
	}

	.br-md-up {
		display: none;
	}

}

/* ------------------------------------------------------------

 ▲ PC | Preset

------------------------------------------------------------ */

/*
 background-color -[module]-
----------------------------------------*/
/* base */
[bg-color="base"] {
	position: relative;
	padding: 80px 0;
	background-color: #f2f2f2;
	border-top: 1px solid #707070;
	/*	border-bottom: 1px solid #707070; */
}

[bg-color="base"]::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-color: #f2f2f2;
}

/*==[ csr_linkArea ]=================== 2011-1024追加（トップページから流用） */
#mainSection .font_s {
	font-size: 87%;
}

#mainSection .blue {
	color: #1E90FF;
}

#mainSection .textBorder1 p.textArea {
	margin: 0 0 15px 0;
}

#mainSection .textBorder1 p.left5 {
	margin: 0 0 0 5px;
}

#mainSection .textBorder1 p.colArea {
	margin: 0 5px 15px 5px;
}

#mainSection .textBorder1 h4.ttl_sp {
	height: 27px;
	margin: 0 0 15px 0;
	padding: 7px 0 0 10px;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,e5e5e5+100 */
	background: #ffffff;
	/* Old browsers */
	background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
	/* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #e5e5e5));
	/* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
	/* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
	/* Opera 11.10+ */
	background: -ms-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
	/* IE10+ */
	background: linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
	/* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e5e5e5', GradientType=0);
	/* IE6-9 */
}

* html #mainSection .textBorder1 h4.ttl_sp {
	background: url("/csr/img/bg_ttl_01.gif") no-repeat left top;
	width: 549px;
	height: 34px;
	margin: 0 0 15px 0;
	padding: 7px 0 0 10px;
}

#mainSection .bo_img img {
	border: 1px solid #c5c5c5;
	display: block;
	padding: 5px;
}

#mainSection p span.imgRight02 {
	float: right;
	padding: 4px;
}

#gnCSR #contentsArea #mainSection .linkTxt a {
	background: url("/common/img/co_ic_10.gif") no-repeat right bottom;
	padding: 2px 18px 2px 0;
}

#mainSection .perNote {
	font-size: 80%;
	text-align: right;
}

#mainSection .perNote02 {
	font-size: 80%;
}

#mainSection .pf_ttl {
	margin: 0 0 12px 0;
}

#mainSection .csr_img {
	display: block;
	margin: 0 auto;
}

*+html #mainSection .fntL {
	font-size: 180%;
}

.ml0 {
	margin-left: 0px !important;
}

.mt0 {
	margin-top: 0px !important;
}

.mt4 {
	margin-top: 4px !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mt7 {
	margin-top: 7px !important;
}

.mt8 {
	margin-top: 8px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt12 {
	margin-top: 12px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mb3 {
	margin-bottom: 3px !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.mb7 {
	margin-bottom: 7px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb12 {
	margin-bottom: 12px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.pt0 {
	padding-top: 0px !important;
}

.pt5 {
	padding-top: 5px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pt25 {
	padding-top: 25px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pb0 {
	padding-bottom: 0px !important;
}

.pb3 {
	padding-bottom: 3px !important;
}

.pb5 {
	padding-bottom: 5px !important;
}

.pb7 {
	padding-bottom: 7px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pb12 {
	padding-bottom: 12px !important;
}

.pb15 {
	padding-bottom: 15px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.text09 {
	font-size: 69%;
}

.text10 {
	font-size: 77%;
}

.text11 {
	font-size: 85%;
}

.text12 {
	font-size: 93%;
}

.text13 {
	font-size: 100%;
}

.text14 {
	font-size: 108%;
}

.text15 {
	font-size: 116%;
}

.text16 {
	font-size: 123.1%;
}

.text17 {
	font-size: 131%;
}

.text18 {
	font-size: 138.5%;
}

.text19 {
	font-size: 146.5%;
}

.text20 {
	font-size: 153.9%;
}

.text21 {
	font-size: 161.6%;
}

.text22 {
	font-size: 167%;
}

.text23 {
	font-size: 174%;
}

.text24 {
	font-size: 182%;
}

.text25 {
	font-size: 189%;
}

.text26 {
	font-size: 197%;
}

/* =======================================x
	CLEAR
========================================== */
#mainSection .textBorder1 p.colArea,
.clear {
	display: inline-block;
}

#mainSection .textBorder1 p.colArea:after,
.clear:after {
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
	clear: both;
}

* html #mainSection .textBorder1 p.colArea,
* html .clear {
	height: 1%;
}

/* Hides MacIE5 */
/*==[ csr_linkArea ]=================== 2011-0218追加（トップページから流用）*/
/* span */
#mainSection .textBorder1 p.colArea,
.clear {
	display: block;
}

/* Hides MacIE5 */
/*==[ csr_linkArea ]=================== 2011-0218追加（トップページから流用）*/
/* span */
#csr_linkArea h4 span {
	display: block;
	position: absolute;
	top: 16px;
	left: 548px;
	text-indent: 0;
}

/*- 定義リスト -*/
#csr_linkArea dl {
	margin: 0 0 10px 5px;
	padding: 0;
	border: none;
	width: 581px;
}

#csr_linkArea dl dd {
	margin: 0 0 0 1em;
	text-indent: -1em;
}

#csr_linkArea dl dt {
	margin: 0 0 2px 0;
}

/* line */
#csr_linkArea .line_01 {
	margin: 0 0 10px;
	padding: 0;
	width: 586px;
	/* tuikaIE7*/
}

/*- 段落 -*/
#csr_linkArea p {
	text-align: right;
}

#csr_linkArea dl dd a {
	padding: 1px 0 1px 20px;
	background: url(/common/img/co_ic_02.gif) 0 5px no-repeat;
	_padding: 1px 0 1px 35px;
	/* IE 6.x */
	_background: url(/common/img/co_ic_02.gif) 0 0.5em no-repeat;
	/* IE 6.x */
	_height: 1px;
	/* IE 6.x */
}

/*==[ csr_linkArea ]=================== 2011-0218追加（トップページから流用）*/
#mainSection .top15 {
	margin-top: 15px !important;
}

#mainSection .bottom15 {
	margin-bottom: 15px !important;
}

#mainSection .font_m {
	font-size: 100% !important;
}

#mainSection .corner_ttl {
	margin: 0 0 1px 0;
}

#mainSection h3.theme {
	padding-top: 0 !important;
}

#gnCSR #sideSection #localNavigation ul li .noLink {
	display: block;
	padding: 7px 8px 7px 13px;
	border-top: 1px solid #bababa;
	border-right: 1px solid #cfcfcf;
	border-bottom: 1px solid #cfcfcf;
	border-left: 1px solid #cfcfcf;
	color: #666;
	background: #cfcfcf;
	_height: 1px;
	/* IE */
}

#gnCSR #sideSection #localNavigation ul li.ln_03 ul {
	display: block;
}

#gnCSR #sideSection #localNavigation ul li.ln_03 ul li {}

#gnCSR #sideSection #localNavigation ul li.ln_03 ul li.lnBlankLink a {
	border-top: 1px solid #cfcfcf;
	border-right: 1px solid #cfcfcf;
	border-bottom: 1px solid #cfcfcf;
	border-left: 1px solid #cfcfcf;
	background: url(/common/img/co_ic_05.gif) 26px 10px no-repeat #cfcfcf;
}

#gnCSR #sideSection #localNavigation ul li.ln_03 ul li.lnBlankLink a:hover {
	border: 1px solid #00a99e !important;
	color: #CC0033;
	text-decoration: none;
	background-color: #d2ebe9;
}

#mainSection h5 {
	border: 1px solid #a4d4d4;
}

#mainSection .notesText div p.aster01 {
	margin-left: 0 !important;
	padding-left: 1.3em;
	text-indent: -1.3em;
}

#mainSection .notesText div p.aster02 {
	margin-left: 0 !important;
	padding-left: 4.8em;
	text-indent: -4.8em;
}

#mainSection .bottom0 {
	padding-bottom: 0 !important;
}

#mainSection .bottom60 {
	margin-bottom: 60px !important;
}

#mainSection .mgb0 {
	margin-bottom: 0 !important;
}

#mainSection p span.imgRight {
	margin: 0 0 5px 10px;
	_margin: 0 0 5px 0;
}

#mainSection sub {
	position: relative;
	top: -3px;
	line-height: 150%;
	font-size: 75%;
}

#mainSection sup.nomalStyle {
	color: #666666;
	vertical-align: text-top;
}

#mainSection p.leadText img {
	display: block;
}

#mainSection .textBorder0 {
	background-color: #f0f0f0;
	margin: 0 0 20px 5px;
	padding: 15px 15px 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}

#mainSection .textBorder0 h5 {
	border-bottom: 1px solid #cccccc;
	margin: 0;
}

#mainSection .textBorder0 span {
	background-color: #fff;
}

#mainSection .textBorder0 p {
	margin: 0 0 5px 5px;
}

#mainSection .textBorder0 p.pdf_link {
	margin: 10px 0 0 5px;
	font-size: 120%;
}

#mainSection .textBorder0 ul.uList {
	padding: 0 0 0 17px;
}

#mainSection .textBorder0 ul.uList li {
	list-style-type: disc;
	margin: 0 0 0 5px;
}

.topSec #mainSection .textBorder1 {
	margin: 0 0 30px 0;
	padding: 15px 15px 10px 15px;
	border: 1px dashed #ccc;
	background-color: #fff;
}

#mainSection .textBorder1 {
	background-color: #f0f0f0;
	margin: 0 0 20px 5px;
	padding: 15px 15px 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}

.topSec .textBorder1 dl {
	border-left: 3px solid #00B6AC !important;
	margin: 0 0 20px !important;
	padding: 0 0 0 13px;
}

.textBorder1 dl dt {
	color: #666 !important;
	font-weight: bold;
	margin: 0 0 3px !important;
}

.textBorder1 dl dd {
	color: #525252 !important;
}

#mainSection .textBorder1 h5 {
	margin: 15px 0;
	color: #fff;
	padding: 5px 12px;
	background: #1F9892;
	background-image: none;
	border: none;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}

#mainSection .textBorder1 h5:first-child {
	margin-top: 0;
}

#mainSection .textBorder1 p {
	margin: 0 0 5px 0;
}

#mainSection .textBorder1 p.mgb {
	margin-bottom: 15px;
}

#mainSection .textBorder1 span {
	background-color: #fff;
}

#mainSection table.uniTable.gri_guideline {
	margin-left: 0;
}

#mainSection table.uniTable.v_middle th,
#mainSection table.uniTable.v_middle td,
#mainSection table.uniTable.gri_guideline th,
#mainSection table.uniTable.gri_guideline td {
	vertical-align: middle;
}

#mainSection table.uniTable.gri_guideline th.ttl_01 {
	font-weight: bold;
	color: #ffffff;
	padding: 3px;
	background: #c5c5c5;
}

#mainSection table.uniTable.gri_guideline td.ttl_001 {
	padding: 3px;
	background: #c5c5c5;
}

#mainSection table.uniTable.gri_guideline th.ttl_02 {
	font-weight: normal;
	padding: 3px;
	background: #eeeeee;
}

#mainSection table.uniTable.gri_guideline td.ttl_002 {
	padding: 3px;
	background: #eeeeee;
}

#mainSection table.uniTable.gri_guideline th.ttl_03 {
	font-weight: normal;
	padding: 3px;
	background: #f8f8f8;
}

#mainSection table.uniTable.gri_guideline td.ttl_003 {
	padding: 3px;
	background: #f8f8f8;
}

#mainSection table.uniTable .txt_center {
	text-align: center !important;
	display: block;
}

#mainSection table.uniTable .circlist {
	color: #ababab;
}

#mainSection table.uniTable.pd6 td {
	padding: 6px;
}

#mainSection table.uniTable.privacy td {
	text-align: center;
}

#mainSection table.uniTable th.pd3 {
	padding: 5px 3px;
}

#mainSection table.uniTable th.tHeading_02.grp {
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
}

#mainSection table.uniTable th.tHeading_011 {
	padding: 3px 10px;
	color: #fff;
	background-color: #ababab;
	text-align: center;
	vertical-align: middle;
}

#mainSection table.uniTable td.noneBorderTop {
	border-bottom: none;
	padding-bottom: 0;
}

#mainSection table.uniTable td.noneBorder {
	border-top: none;
	border-bottom: none;
	padding-top: 0;
	padding-bottom: 0;
}

#mainSection table.uniTable td.noneBorderBottom {
	border-top: none;
	padding-top: 0;
}

#mainSection table.uniTable td.borderless {
	border-right: none;
	border-left: none;
}

#mainSection table.uniTable td ul.indent {
	margin: 0;
	padding: 0;
}

#mainSection table.uniTable td ul.indent li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

#mainSection .small {
	margin: -20px 0 0 5px;
	/* JIS規格対応 /common/js/common.js */
	/*
	font-size: 10px;
*/
	/* /JIS規格対応 /common/js/common.js */
	font-weight: 100;
}

#mainSection .center {
	text-align: center;
}

#mainSection .columnLeft {
	width: 160px;
	margin: 0 5px 0 0;
	float: left;
}

#mainSection .columnCenter {
	width: 250px;
	margin: 0 10px 0 0;
	float: left;
}

#mainSection .columnRight {
	width: 155px;
	float: left;
}

#mainSection .columnCenter p.text {
	padding: 0 0 0 10px;
}

#mainSection dl.act_contents {
	border: none;
	margin: 0;
	padding: 0;
}

#mainSection dl.act_contents dt {
	margin: 0 0 3px 0;
	padding: 0;
}

#mainSection dl.act_contents dd {
	margin: 0 0 0 1em;
	padding: 0;
}

#mainSection dl.act_contents dd .indent {
	margin-left: 1em;
	display: block;
}

#mainSection dl.act_contents dd .section {
	display: block;
	text-align: right;
	margin-top: 10px;
	font-size: 80%;
}

#sideSection #actionLink .txt_none {
	padding: 0 0 3px 0;
	border-bottom: 1px solid #d9d9d9;
	_padding: 0 0 2px 0;
	/* IE */
}

#mainSection .backnumber_column {
	margin: 20px 0 0 5px;
}

#mainSection .backnumber_column h4 {
	margin-left: 0;
}

#mainSection .backnumber_column .linkIcon_03 {
	font-size: 100%;
}

#mainSection .backnumber_column .left_column {
	float: left;
	width: 275px;
	margin: 0 30px 30px 0;
}

#mainSection .backnumber_column .right_column {
	float: left;
	width: 275px;
	margin: 0;
}

#mainSection .backnumber_column dl {
	border: none;
	margin: 0;
	padding: 0;
}

#sideSection #actionLink .backnum_link {
	margin: 15px 0 10px 6px;
	display: block;
}

#sideSection #actionLink .backnum_link a {
	margin: 0;
	padding: 0 0 0 18px;
	font-size: 120%;
	font-weight: bold;
	line-height: 140%;
	background: url(/common/img/co_ic_01_big.gif) left 0.2em no-repeat;
	_height: 1px;
	/* IE */
}

.backnum_link a {
	display: block;
	padding-left: 20px;
	display: block;
	padding: 1rem 2rem;
	background: #ECF9F8;
	border: 1px solid #00b6ac;
	;
}

.backnum_link a,
.linkIcon_map a {
	color: #CC0033;
	-webkit-tap-highlight-color: rgba(0, 120, 113, 0.32);
}

body.digest #contentsArea {
	background: none;
}

body.digest #contentsArea #contentsBlock {
	width: 1000px;
	background: none;
}

body.digest #mainSection {
	width: 1000px !important;
	padding: 0 !important;
	margin: 10px 0 0 0 !important;
}

body.digest #mainSection table.uniTable {
	margin-left: 0;
}

body.digest .window_close {
	margin: 0 auto 10px auto;
	text-align: center;
}

body.digest .window_close a {
	padding: 0 0 0 15px;
	background: url(/csr/img/co_ic_close.gif) center left no-repeat;
}

/* clear */
#mainSection .backnumber_column:after,
ul.eco:after {
	display: block;
	clear: both;
	height: 0px;
	content: "";
}

#mainSection .backnumber_column,
ul.eco {
	display: inline-block;
}

/* Hides MacIE5 */
* html #mainSection .backnumber_column,
* html ul.eco {
	height: 1%;
}

#mainSection .backnumber_column,
ul.eco {
	display: block;
}

/* Hides MacIE5 */
/*==[ gNavArea ]========================================*/
/*-----CSRの取り組み-----*/
/* default */
#gNavLi04 a {
	width: 113px;
	background-position: -339px -45px;
}

/* hover */
#gNavLi04 a:hover {
	background-position: -339px -90px;
}

/*- 上付き文字 -*/
#gnCSR #mainSection sup.add {
	color: #666;
	vertical-align: text-top;
	font-size: 65%;
	_font-size: 75%;
	line-height: 100%;
}

#gnCSR #mainSection a sup.add {
	color: #CC0033;
}

.mt0 {
	margin-top: 0 !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

#mainSection #president {
	text-align: right;
}

/*===================== 2013-1204追加（トップページ、リニューアル）*/
* html .clearFix {
	height: 1%:
}

*:first-child+html .clearFix {
	height: 1%:
}

.clearFix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.topSec {
	height: 100%;
}

.topSec #mainSection a {
	color: #666;
	transition: .1s;
}

.topSec #mainSection a:hover {
	color: #CC0033;
	text-decoration: none;
}

.topSec #mainSection a:hover img {
	filter: alpha(opacity=80);
	opacity: 0.8;
}

.topSec #mainSection .h3Top {
	margin-bottom: 20px;
}

.topSec #mainSection .mainImg {
	position: relative;
	width: 610px;
	margin-bottom: 40px;
}

.topSec #mainSection .linkBox {
	margin: 0;
}

.topSec #mainSection .linkBox li {}

.topSec #mainSection .linkBox li#linkBox_01 {}

.topSec #mainSection .linkBox li#linkBox_02 {
	float: left;
}

.topSec #mainSection .linkBox li#linkBox_03 {
	float: right;
}

.topSec #mainSection .linkBox li#linkBox_04 {}

.topSec #mainSection .linkBox li ul.Inner {
	margin: 0;
	padding: 0;
	border: none;
}

.topSec #mainSection .linkBox li ul.Inner li.InnerL {
	background: url("/csr/img/index_ln_01.gif") no-repeat left center;
	padding: 0 0 0 20px;
	width: 120px;
	float: left;
}

.topSec #mainSection .linkBox li ul.Inner li.InnerR {
	float: left;
	padding: 14px 0 0 0;
	width: 150px;
	font-weight: bold;
}

.topSec #mainSection .communicationBox {
	position: relative;
	margin: 0 0 32px -30px;
	width: 640px;
}

.topSec #mainSection article {
	margin-left: 30px;
	margin-bottom: 40px;
	width: 290px;
	float: left;
}

.topSec #mainSection article a {
	display: block;
}

.topSec #mainSection article h6 {
	margin: 0;
	height: 24px;
	line-height: 24px;
	text-align: center;
	color: #fff;
}

.topSec #mainSection article.communicationBox_01 h6 {
	background: #317436;
}

.topSec #mainSection article.communicationBox_02 h6 {
	background: #265c84;
}

.topSec #mainSection article.communicationBox_03 h6 {
	background: #934046;
}

.topSec #mainSection article.communicationBox_04 h6 {
	background: #00636f;
}

.topSec #mainSection article p {
	margin: 0;
	padding-left: 60px;
	display: table-cell;
	width: 230px;
	height: 52px;
	color: #fff;
	font-size: 96%;
	vertical-align: middle;
}

.topSec #mainSection article.communicationBox_01 p {
	background: #8ec883 url(../img/index_im_04.png) no-repeat 11px 50%;
}

.topSec #mainSection article.communicationBox_02 p {
	background: #80aedb url(../img/index_im_06.png) no-repeat 11px 50%;
}

.topSec #mainSection article.communicationBox_03 p {
	background: #f09593 url(../img/index_im_08.png) no-repeat 7px 50%;
}

.topSec #mainSection article.communicationBox_04 p {
	background: #6fb2bf url(../img/index_im_10.png) no-repeat 9px 50%;
}

.topSec #mainSection .btnDl {}

.topSec #mainSection .btnDl a {
	padding-left: 15px;
	display: block;
	height: 40px;
	line-height: 40px;
	background: #ECF9F8;
	border: 1px solid #00b6ac;
}

.topSec #mainSection .moreBox {
	margin-top: 25px;
	margin-left: 0;
	width: 610px;
}

.topSec #mainSection .moreBox li {
	float: left;
}

.topSec #mainSection .moreBox li a {
	font-size: 105%;
	font-weight: bold;
	background: url("../../common/img/co_ic_02.gif") no-repeat left center;
	padding: 2px 0 0 24px;
}

.topSec #mainSection .bottomBox {
	margin-bottom: 90px;
	padding: 12px 14px 2px;
	width: 580px;
	background: #f3f3f3;
	border: 1px solid #e0e0e0;
	font-size: 105%;
}

.topSec #mainSection .bottomBox dt {
	float: left;
	color: #666;
}

.topSec #mainSection .bottomBox dd {
	float: right;
}

.topSec #mainSection .bottomBox dd img {
	padding-left: 5px;
	vertical-align: middle;
}

.topSec #specialContents {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	display: none;
	overflow: hidden;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	min-width: 920px;
	background: #fff;
	line-height: 190%;
	text-align: left;
	z-index: 101;
}

.topSec #specialContents .spSection {
	position: relative;
	width: 100%;
	height: 100%;
	background: #fff;
}

.topSec #specialContents .bgImg {
	position: absolute;
	left: 50%;
	top: 0;
	width: 50%;
	background: url("/csr/img/index_im_10.jpg") no-repeat right top;
	background-size: auto 105%;
}

.topSec #specialContents .bgImg:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	border: 1px #fff solid;
	margin: 6px;
	display: block;
	opacity: 0.3;
}

.topSec #specialContents #section02 .bgImg {
	background-image: url("/csr/img/index_im_11.jpg");
}

.topSec #specialContents #section03 .bgImg {
	background-image: url("/csr/img/index_im_12.jpg");
}

.topSec #specialContents #section04 .bgImg {
	background-image: url("/csr/img/index_im_13.jpg");
	height: 800px !important;
}

.topSec #specialContents #section05 .bgImg {
	background-image: url("/csr/img/index_im_14.jpg");
}

.topSec #specialContents .right .bgImg {
	left: 0;
	background-position: left top;
}

.topSec #specialContents .center {
	position: relative;
	margin: 0 auto;
	padding: 70px 460px 94px 0;
	width: 460px;
	text-align: left;
}

.topSec #specialContents .right .center {
	padding: 60px 0 94px 460px;
}

.topSec #specialContents #section01 .center {
	padding-top: 170px;
}

.topSec #specialContents h1 {
	margin: 0 0 14px -106px;
}

.topSec #specialContents h2 {
	margin-bottom: 74px;
	padding: 28px 0 0 30px;
	background-repeat: no-repeat;
	background-position: left top;
	font-size: 185%;
	line-height: 135%;
}

.topSec #specialContents h2 span {
	display: block;
	font-size: 58%;
	font-weight: normal;
}

.topSec #specialContents p.num_left {
	margin: 0 0 -25px 0 !important;
}

.topSec #specialContents p.num_right {
	margin: 0 0 -25px 40px !important;
}

.topSec #specialContents h3 {
	margin-bottom: 16px;
	padding: 11px 0 0 32px;
	background: url("/common/img/co_bg_17.gif") no-repeat 18px top;
	font-size: 110%;
}

.topSec #specialContents p {
	margin: 0 0 40px 30px;
	width: 368px;
	font-size: 107%;
	line-height: 1.9em;
}

.topSec #specialContents .right p {
	margin-left: 72px;
}

.topSec #specialContents #section01 p {
	margin: 0 0 0 62px;
}

.topSec #specialContents .right h2,
.topSec #specialContents .right h3 {
	margin-left: 42px;
}

.topSec #specialContents .spLinkBox {
	margin-left: 7px;
	width: 407px;
	background: #F3F3F3;
}

.topSec #specialContents .right .spLinkBox {
	margin-left: 49px;
}

.topSec #specialContents .spLinkBox li {
	padding: 14px 10px 12px 15px;
	border-bottom: 1px dotted #B0B0B0;
}

.topSec #specialContents .spLinkBox li a {
	display: block;
	padding-left: 26px;
	background: url("/common/img/co_ic_02.gif") no-repeat left 0.3em;
	color: #333;
	font-size: 91%;
	line-height: 1.5em;
}

.topSec #specialContents .spLinkBox li a:hover {
	color: #CC0033;
}

.topSec #specialContents .footCloseBack {}

.topSec #specialContents .footClose {
	margin-top: 80px;
	padding: 20px 0;
	width: 100%;
	border-top: 1px solid #505050;
	background: #666;
	text-align: center;
	cursor: pointer;
	transition: .2s;
}

.topSec #specialContents .footClose:hover,
.topSec #specialContents .footClose.hover {
	opacity: 0.8;
}

.topSec .closeBtn {
	display: none;
	position: fixed;
	right: 18px;
	top: 18px;
	cursor: pointer;
	z-index: 102;
}

.topSec .closeBtn {
	display: none;
	position: fixed;
	right: 18px;
	top: 18px;
	cursor: pointer;
	z-index: 102;
}

@media screen and (max-width: 920px) {
	.topSec #specialContents .bgImg {
		background-attachment: scroll;
	}
}

/*==[ breadCrumbSection ]==*/
div#contentsArea #contentsBlock div#breadCrumbSection,
div#contentsArea #contentsBlockNSS div#breadCrumbSection {
	height: 40px;
	line-height: 20px;
	margin-top: 20px;
	color: #4d4d4d;
	font-size: 75%;
	/* IE 6.x */
}

/*===================== 2015-1019追加（リニューアル）*/
/*- 見出し4 (h4 最大幅) -*/
div#mainSection h4 {
	margin: 0 0 10px 5px;
	padding: 6px;
	border-bottom: 2px solid #00b6ac;
	background: #f3f3f3 none;
	font-size: 105%;
}

.lnCategory_15 div#mainSection h4 {
	border-bottom-color: #6491cc;
}

/*- 見出し5 (h5) -*/
div#mainSection h5 {
	margin: 0 0 10px 5px;
	padding: 6px 15px;
	border-top: none;
	border-right: none;
	border-bottom: 1px solid #cccccc;
	border-left: none;
	background: url(../../csr/img/co_h5_01.gif) 5px 0.6em no-repeat;
}

/*- 注釈(文中) -*/
div#mainSection sup {
	position: relative;
	top: -1px;
	vertical-align: top;
	color: #333;
}

#mainSection .textBorder1 h6 {
	margin: 0 10px 5px;
	border-bottom: 1px solid #adadad;
}

#mainSection .textBorder1 p {
	padding: 0 10px;
}

#mainSection .textBorder1 dl {
	padding: 0 10px;
	border-left: none;
}

#mainSection .textBorder1 dl dt {
	margin-bottom: 5px !important;
	color: #333333 !important;
	border-bottom: 1px solid #adadad;
}

/* トップメッセージ */
h4 span {
	font-size: 85%;
}

.lnCurrent_08 #mainSection #presidentImg {
	margin-top: 35px;
	text-align: center;
}

.lnCurrent_08 #mainSection #messageLead {
	margin: 35px 0 30px 5px;
	padding: 0;
	line-height: 175%;
	text-align: left;
	color: #00A99E;
	font-size: 130%;
	font-weight: normal;
	background: none;
	border: none;
}

.lnCurrent_08 #mainSection p sup {
	position: relative;
	top: -3px;
	font-size: 70%;
}

.lnCurrent_08 #mainSection .messageTitle {
	margin: 0 0 5px 5px;
	padding: 0;
	color: #61b0e2;
	font-size: 115%;
	background: none;
	border: none;
}

.lnCurrent_08 #mainSection .note {
	margin: 10px 0 20px 5px;
}

.lnCurrent_08 #mainSection .note li {
	margin-bottom: 0;
	padding-left: 2em;
	text-indent: -1.75em;
	font-size: 77%;
}

.top_message {
	width: 500px;
	margin: 20px auto;
}

.ceo_img {
	float: right;
	width: 130px;
	height: 150px;
}

.title_message {
	float: left;
	width: 350px;
}

.title_message #h4 {
	padding: 30px 0 0;
	margin: 0 0 20px 0;
	background: none;
	border-bottom: none;
	font-size: 20px;
	line-height: 25px;
}

@media all and (-ms-high-contrast: none) {

	*::-ms-backdrop,
	.title_message #h4 {
		font-size: 18px;
	}
}

.title_message p {
	font-size: 16px;
	font-weight: bold;
	color: #00b6ac;
}

/* ▼ NTTコムウェアグループのサステナビリティ ▼ */
#g-csr h2 {
	font-size: 3.6rem;
}

#g-csr h3 {
	font-size: 2.4rem;
}

#g-csr h4 {
	font-size: 2rem;
	text-align: center;
}

/*===================== ▼ 2023/12/19追加（更新）*/
#g-csr .annotation {
	font-size: 1.4rem;
	margin-top: 1em;
}

/*===================== ▲ 2023/12/19追加（更新）*/
@media (min-width: 500px) {
	#g-csr .innerBox {
		padding: 3rem;
	}
}

#g-csr .policy .innerBox a:hover {
  text-decoration: underline;
}

#g-csr .policy .innerBox p.txt {
	font-size: 1.8rem;
	line-height: 1.7em;
  text-align: center;
}
#g-csr .policy .innerBox p sup {
	color: #CC0033;
}

#g-csr .policy .innerBox .annotation_wrap.-pos-center {
  display: flex;
  justify-content: center;
}

#g-csr .policy .innerBox .annotation {
	position: relative;
	padding-left: 2rem;
}

#g-csr .policy .innerBox .annotation:before {
	content: "＊";
	position: absolute;
	left: 0;
	color: #CC0033;
}

#g-csr .policy .innerBox .theme {
	padding: 1.5rem;
	background-color: #fff;
}

@media (min-width: 500px) {
	#g-csr .policy .innerBox .theme {
		padding: 3rem;
	}
}

#g-csr .policy .innerBox .theme h4 {
	text-align: center;
	font-weight: 500;
}

#g-csr .policy .innerBox .theme h4 span {
	position: relative;
	padding: 0 4rem;
	font-size: 2rem;
}

#g-csr .policy .innerBox .theme h4 span:before,
#g-csr .policy .innerBox .theme h4 span:after {
	content: "";
	position: absolute;
	width: 2rem;
	height: 0.2rem;
	background-color: #222;
	top: 0;
	bottom: 0;
	margin: auto;
}

#g-csr .policy .innerBox .theme h4 span:before {
	left: 0;
}

#g-csr .policy .innerBox .theme h4 span:after {
	right: 0;
}

#g-csr .policy .innerBox .theme ul li {
	position: relative;
	text-align: center;
}

@media (min-width: 767px) {
  #g-csr .policy .innerBox .theme ul {
    margin-right: -3.5%;
    margin-bottom: -50px;
  }
	#g-csr .policy .innerBox .theme ul li {
    margin-right: 3.5%;
    margin-bottom: 50px;
		width: 21.5%;
	}
  #g-csr .policy .innerBox .theme ul li.-type-1 {
    width: 100%;
    max-width: none;
    height: 221px;
    max-height: 221px;
  }
  #g-csr .policy .innerBox .theme ul li.-type-1:before {
    display: none;
  }
  #g-csr .policy .innerBox .theme ul li.-type-1 img {
    max-width: 140px;
    max-width: calc(55% / 4);
  }
}

@media (min-width: 767px) and (max-width: 1200px) {
  #g-csr .policy .innerBox .theme ul li.-type-1 {
    height: 100%;
  }
  #g-csr .policy .innerBox .theme ul li.-type-1:before {
    display: block;
    padding-bottom: 20%;
  }
}

@media (max-width: 767px) {
  #g-csr .policy .innerBox .theme ul {
    margin-bottom: -3rem;
  }
  #g-csr .policy .innerBox .theme ul li {
		margin-bottom: 3rem;
  }
}

@media (max-width: 450px) {
	#g-csr .policy .innerBox .theme ul li {
		margin: auto;
		width: 80%;
    margin-bottom: 3rem;
	}
}

#g-csr .policy .innerBox .theme ul li:before {
	content: "";
	display: block;
	padding-bottom: 100%;
}

#g-csr .policy .innerBox .theme ul li.ict {
	border: 0.2rem solid #E84383;
}

#g-csr .policy .innerBox .theme ul li.safety {
	border: 0.2rem solid #70634A;
}

#g-csr .policy .innerBox .theme ul li.env {
	border: 0.2rem solid #5CB531;
}

#g-csr .policy .innerBox .theme ul li.partner {
	border: 0.2rem solid #009E98;
}

#g-csr .policy .innerBox .theme ul li.business {
	border: 0.2rem solid #00479D;
}

#g-csr .policy .innerBox .theme ul li h5 {
	font-weight: 500;
	font-size: 2rem;
	position: absolute;
	top: -2rem;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 1;
}

@media (max-width: 1200px) and (min-width: 767px) {
	#g-csr .policy .innerBox .theme ul li h5 {
		font-size: 1.66667vw;
	}
}

@media (max-width: 650px) and (min-width: 451px) {
	#g-csr .policy .innerBox .theme ul li h5 {
		font-size: 3.07693vw;
	}
}

@media (max-width: 400px) {
	#g-csr .policy .innerBox .theme ul li h5 {
		font-size: 5vw;
	}
}

#g-csr .policy .innerBox .theme ul li.ict h5 {
	color: #E84383;
}

#g-csr .policy .innerBox .theme ul li.safety h5 {
	color: #70634A;
}

#g-csr .policy .innerBox .theme ul li.env h5 {
	color: #5CB531;
}

#g-csr .policy .innerBox .theme ul li.partner h5 {
	color: #009E98;
}

#g-csr .policy .innerBox .theme ul li.business h5 {
	color: #00479D;
}

#g-csr .policy .innerBox .theme ul li h5 span {
	display: inline-block;
  margin-top: -0.8rem;
	padding: 1rem;
	background-color: #fff;
}

#g-csr .policy .innerBox .theme ul li.safety h5 span {
	padding: 1rem;
}

#g-csr .policy .innerBox .theme ul li.env h5 span {
	padding: 1rem 2rem;
}

@media (max-width: 450px) {
	#g-csr .policy .innerBox .theme ul li h5 span {
		padding: 1rem 2rem !important;
	}

	#g-csr .policy .innerBox .theme ul li.partner h5 span {
		padding: 1rem 0 !important;
	}
}

#g-csr .policy .innerBox .theme ul li img {
	max-width: 55%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

#g-csr .g-csr_table {
	border: none;
}

#g-csr .g-csr_table tr:not(.title) {
	background-color: #fff;
}

#g-csr .g-csr_table .title th {
	font-weight: 500;
	color: #fff;
	background-color: #CC0033;
	border: none;
	border-bottom: 1.25rem solid #EFF3F6;
	padding: 1.3rem 1rem;
}

@media (min-width: 767px) {
	#g-csr .g-csr_table {
		font-size: 1.8rem;
	}

	#g-csr .g-csr_table .title th:first-child {
		width: 640px;
		border-right: 1rem solid #EFF3F6;
	}

	#g-csr .g-csr_table .title th:last-child {
		width: 465px;
	}

	/*===================== ▼ 2023/12/19追加（更新）*/
	#g-csr .g-csr_table .title th:first-child {
		width: 40%;
	}

	#g-csr .g-csr_table .bar_pc {
		margin-left: 1em;
		margin-right: 1em;
	}

	#g-csr .g-csr_table .safety .bar_pc {
		color: #70634A;
	}

	#g-csr .g-csr_table .env .bar_pc {
		color: #5CB531;
	}

	#g-csr .g-csr_table .partner .bar_pc {
		color: #009E98;
	}

	#g-csr .g-csr_table .business .bar_pc {
		color: #00479D
	}

	#g-csr .g-csr_table .br_sp {
		display: none;
	}

	/*===================== ▲ 2023/12/19追加（更新）*/
}

@media (max-width: 767px) {
	#g-csr .g-csr_table {
		font-size: 1.6rem;
	}

	#g-csr .g-csr_table .title th:first-child {
		border-bottom: 0.2rem solid #EFF3F6;
	}

	/*===================== ▼ 2023/12/19追加（更新）*/
	#g-csr .g-csr_table .bar_pc {
		display: none;
	}

	/*===================== ▲ 2023/12/19追加（更新）*/

}

#g-csr .g-csr_table td {
	border: none;
	border-bottom: 0.5rem solid #EFF3F6;
	padding: 1rem 3rem;
	vertical-align: middle;
}

#g-csr .g-csr_table .business td {
	border-bottom: none;
}

#g-csr .g-csr_table td.theme_tit {
	font-weight: 500;
}

#g-csr .g-csr_table .ict td.theme_tit {
	color: #E84383;
}

#g-csr .g-csr_table .safety td.theme_tit {
	color: #70634A;
}

#g-csr .g-csr_table .env td.theme_tit {
	color: #5CB531;
}

#g-csr .g-csr_table .partner td.theme_tit {
	color: #009E98;
}

#g-csr .g-csr_table .business td.theme_tit {
	color: #00479D;
}

#g-csr .g-csr_table td.theme_mate {
	position: relative;
	line-height: 2em;
}

#g-csr .g-csr_table td.theme_tit img {
	width: 50px;
	margin-right: 7%;
}

@media (min-width: 767px) {
	#g-csr .g-csr_table td.theme_mate {
		padding-left: 4rem;
	}

	#g-csr .g-csr_table td.theme_mate:before {
		content: "";
		position: absolute;
		left: 0;
		top: 1rem;
		bottom: 0;
		height: calc(100% - 2rem);
	}

	#g-csr .g-csr_table .ict td:before {
		border-left: 0.2rem solid #E84383;
	}

	#g-csr .g-csr_table .safety td:before {
		border-left: 0.2rem solid #70634A;
	}

	#g-csr .g-csr_table .env td:before {
		border-left: 0.2rem solid #5CB531;
	}

	#g-csr .g-csr_table .partner td:before {
		border-left: 0.2rem solid #009E98;
	}

	#g-csr .g-csr_table .business td:before {
		border-left: 0.2rem solid #00479D;
	}
}

@media (max-width: 767px) {
	#g-csr .g-csr_table td {
		text-align: center;
		border-bottom: 1.25rem solid #EFF3F6;
	}

	#g-csr .g-csr_table .partner td {
		border-bottom: 2.25rem solid #EFF3F6;
	}

	#g-csr .g-csr_table .ict td.theme_tit {
		border-bottom: 0.15rem solid #E84383;
	}

	#g-csr .g-csr_table .safety td.theme_tit {
		border-bottom: 0.15rem solid #70634A;
	}

	#g-csr .g-csr_table .env td.theme_tit {
		border-bottom: 0.15rem solid #5CB531;
	}

	#g-csr .g-csr_table .partner td.theme_tit {
		border-bottom: 0.15rem solid #009E98;
	}

	#g-csr .g-csr_table .business td.theme_tit {
		border-bottom: 0.15rem solid #00479D;
	}

	#g-csr .g-csr_table td.theme_tit img {
		margin-right: 4%;
	}
}

/* ▲ NTTコムウェアグループのサステナビリティ ▲ */

/* CSRの取り組み�T〜�W */
.icon {
	margin-top: 10px !important;
	text-align: right;
}

.icon_cam {
	font-weight: bold;
	padding-top: 4px;
	padding-left: 25px;
	background: url(../img/icon_cam.jpg) no-repeat left;
	background-position: 0 4px;
}

/* ゲートページ */
.lnCurrent_000 #mainSection h3,
.lnCurrent_000 #mainSection h4 {
	margin: 0;
	padding: 0;
	border: none;
	text-align: center;
	background: none;
}

.lnCurrent_000 #mainSection p {
	margin: 0;
}

.lnCurrent_000 #mainSection .textBox {
	margin: 27px auto 0;
	width: 494px;
}

.lnCurrent_000 #mainSection .box02 {
	margin-top: 30px;
	padding-top: 30px;
}

.lnCurrent_000 #mainSection .textBox p {
	line-height: 160%;
}

.lnCurrent_000 #mainSection .gateTitle02 {
	margin-bottom: 8px;
	text-align: left;
	font-size: 131%;
	font-weight: bold;
}

.lnCurrent_000 #mainSection .gateTitle03 {
	margin: 20px 0 5px;
	text-align: left;
	font-weight: bold;
}

.lnCurrent_000 #mainSection .textBox ul {
	margin: 0;
}

.lnCurrent_000 #mainSection .textBox li {
	margin: 0 0 0 0;
	padding-left: 15px;
}

.lnCurrent_000 #mainSection .textBox li strong {
	margin-right: 3px;
	position: relative;
	top: 2px;
	font-size: 315%;
	font-weight: normal;
}

.lnCurrent_000 #mainSection .textBox li strong span {
	font-size: 40%;
}

.lnCurrent_000 #mainSection .report {
	margin-top: 40px;
}

.lnCurrent_000 #mainSection .report a {
	position: relative;
	display: block;
	height: 50px;
	line-height: 50px;
	text-indent: 1em;
	color: #fff;
	font-size: 130%;
}

.lnCurrent_000 #mainSection .report a:hover {
	text-decoration: none;
	opacity: 0.5;
}

.lnCurrent_000 #mainSection .report span {
	margin-left: 1em;
	padding: 1px 4px 0;
	position: relative;
	top: -2px;
	font-size: 71%;
	border: 1px solid #fff;
	border-radius: 2px;
}

.lnCategory_14 #mainSection .gateTitle02,
.lnCategory_14 #mainSection .gateTitle03 {
	color: #59b75b;
}

.lnCategory_14 #mainSection .textBox li::before {
	content: "■";
	color: #ec6b06;
}

h3.com01,
h3.com02,
h3.com03,
h3.com04 {
	margin-bottom: 1em !important;
}

h3.com01 {
	background: #ec6b06 !important;
	color: #fff;
}

ul.com01 li::before {
	color: #ec6b06;
}

.lnCategory_15 #mainSection .textBox li::before {
	content: "■";
	color: #407935;
}

h3.com02 {
	background: #407935 !important;
	color: #fff;
}

ul.com02 li::before {
	color: #407935;
}

.lnCategory_16 #mainSection .textBox li::before {
	content: "■";
	color: #f6a20c;
}

h3.com03 {
	background: #f6a20c !important;
	color: #fff;
}

ul.com03 li::before {
	color: #f6a20c;
}

.lnCategory_17 #mainSection .textBox li::before {
	content: "■";
	color: #e83419;
}

h3.com04 {
	background: #e83419 !important;
	color: #fff;
}

ul.com04 li::before {
	color: #e83419;
}

.box01 {
	margin-bottom: 2em;
}

.lnCategory_14 #mainSection .box02 {
	border-top: 1px dashed #59b75b;
}

.lnCategory_14 #mainSection .report a {
	background: #59b75b;
}

.lnCategory_15 #mainSection .gateTitle02,
.lnCategory_15 #mainSection .gateTitle03 {
	color: #4694d1;
}

.lnCategory_15 #mainSection .box02 {
	border-top: 1px dashed #4694d1;
}

.lnCategory_15 #mainSection .textBox li strong {
	color: #4694d1;
}

.lnCategory_15 #mainSection .report a {
	background: #4694d1;
}

.lnCategory_16 #mainSection .gateTitle02,
.lnCategory_16 #mainSection .gateTitle03 {
	color: #ec6d74;
}

.lnCategory_16 #mainSection .box02 {
	border-top: 1px dashed #ec6d74;
}

.lnCategory_16 #mainSection .textBox li p {
	font-size: 108%;
}

.lnCategory_16 #mainSection .textBox li strong {
	color: #ec6d74;
	font-size: 307%;
}

.lnCategory_16 #mainSection .report a {
	background: #ec6d74;
}

.lnCategory_17 #mainSection .gateTitle02,
.lnCategory_17 #mainSection .gateTitle03 {
	color: #169cac;
}

.lnCategory_17 #mainSection .box02 {
	border-top: 1px dashed #169cac;
}

.lnCategory_17 #mainSection .textBox li p {
	font-size: 108%;
}

.lnCategory_17 #mainSection .textBox li strong {
	color: #169cac;
	font-size: 307%;
}

.lnCategory_17 #mainSection .report a {
	background: #169cac;
}

/* ダウンロード/バックナンバー */
.lnCurrent_18 #mainSection .current_column {
	margin: 0 auto;
	width: 500px;
}

.lnCurrent_18 #mainSection .current_column ul {
	margin: 0;
	padding: 0;
}

.lnCurrent_18 #mainSection .current_column li {
	margin-top: 35px;
}

.lnCurrent_18 #mainSection .current_column p {
	margin: 0 0 10px 0;
}

.lnCurrent_18 #mainSection .current_column p a {
	padding-left: 20px;
	display: block;
	height: 40px;
	line-height: 40px;
	color: #333333;
	font-size: 121%;
	background: #f3f3f3;
}

.lnCurrent_18 #mainSection .current_column p a:hover {
	text-decoration: none;
	opacity: 0.5;
}

.lnCurrent_18 #mainSection .current_column p span {
	margin-left: 20px;
	padding: 1px 5px 0;
	color: #00b6ac;
	font-size: 80%;
	border: 1px solid #00b6ac;
	border-radius: 2px;
}

/* 右 */
div#mainSection p span.imgRight {
	display: block;
	float: right;
	margin: 0 0 5px 10px;
	padding: 0;
	border: none;
}

/* テーブル */
div#mainSection table.uniTable tr {
	vertical-align: middle;
}

/* 注釈 */
div#mainSection .commentBox dl {
	font-size: 87%;
	border: none;
}

div#mainSection .commentBox dd li {
	margin: 0 0 0 2em;
	list-style: disc;
}

div#mainSection .comment_01 dt {
	margin: 0;
	font-weight: normal;
	float: left;
	clear: both;
}

div#mainSection .comment_01 dd {
	padding-left: 3em;
}

div#mainSection .comment_02 dt {
	margin: 0;
}

div#mainSection .comment_02 dd {
	margin: 0 0 0 1em;
}

div#mainSection .list_01 {
	margin-left: 1em;
}

div#mainSection .list_01 li {
	margin: 0 0 10px 1em;
	list-style: disc;
}

div#mainSection .list_01 li span {
	margin-left: 1em;
	display: block;
}

div#mainSection div.notesText div p.notesText_02 {
	margin-left: 1em !important;
	text-indent: -1em;
}

/*===================== ▼ 2020追加（リニューアル）*/
/* SDGsアクションブック */
#link_sdgs_book {
	margin-top: 30px;
}

/* バックナンバー・設定 */
.backnum_sdgs_action_book {
	pointer-events: none;
}

.backnum_sdgs_action_book_plans {
	display: block;
	padding-left: 20px;
}

/*===================== ▲ 2020追加（リニューアル）*/
.subscript {
	font-size: 60%;
	line-height: 100%;
}

/*===================== ▼ 2021/10追加（更新）*/
/* トップメッセージ */
@media (min-width:960px) {
	.columInner_message_padding {
		padding: 32px 10px !important;
	}
}

.top_message_h2 {
	line-height: 1.42;
}

.president {
	margin-top: 40px;
}

.president img {
	display: block;
}

.president-role,
.president-roma {
	text-align: left;
	display: block;
}

.president-role {
	font-size: 1.067rem;
}

.president-roma {
	margin-left: 78px;
	font-size: .8rem;
}

.image_president {
	max-width: 100%;
}

/*===================== ▲ 2021/10追加（更新）*/
/*===================== ▼ 2023/12追加（更新）*/
/* トップメッセージ */
@media (min-width:960px) {
	.heading[component="lv3"].top_message_h_p {
		font-size: 2rem;
	}
}

@media (max-width: 960px) {
	.heading[component="lv3"].top_message_h_p {
		font-size: min(6.3vw, 2rem);
	}
}

/*===================== ▲ 2021/10追加（更新）*/
/*===================== ▼ 2021/12追加（更新）*/
.communicationInner dd {
	position: relative;
}

.communicationInner p {
	position: absolute;
	bottom: 0.5em;
	right: 0.5em;
	width: 2em;
}

.communicationInner p>img {
	object-fit: contain;
	width: 100%;
}

/*===================== ▼ 2023/12/1追加（更新）*/
.example {
	font-size: .6em;
	vertical-align: text-top;
}

.trademark {
	/*vertical-align: top;*/
	line-height: 1.5rem;
	font-size: 1em;
}
.trademark.bottom {
	vertical-align: bottom;
	line-height: 1.5rem;
	font-size: 1em;
}
.trademark.bottom.num {
	font-size: 0.6em;
}

/*===================== ▲ 2023/12/1追加（更新）*/
@media (max-width: 500px) {
	.communicationInner p {
		width: 1.5em;
	}
}

sup {
	font: status-bar;
	vertical-align: super;
}

/*===================== ▲ 2021/12追加（更新）*/
/* サスティナビリティ憲章  ▼ 2022/02/24追加 */
.charter_sp {
	max-width: 500px;
	margin: auto;
	display: none;
}

@media screen and (max-width: 960px) {
	.charter_pc {
		display: none;
	}

	.charter_sp {
		display: block;
	}
}

/* サスティナビリティ憲章  ▲ 2022/02/24追加 */

#footer {
	margin-top: 0;
}


/* 編集にあたって・エコICTマークの取得・ソリューション環境ラベル  ▼ 2022/08/22追加 */
.eco-ictmark_section a,
.label_section a,
.edit_section a {
	color: #CC0033;
}

/* 編集にあたって・エコICTマークの取得・ソリューション環境ラベル  ▲ 2022/08/22追加 */

/* NTTグループサステナビリティ憲章  ▼ 2022/08/19追加 */
.charter_section figure a {
	opacity: 1.0;
}

/* NTTグループサステナビリティ憲章  ▲ 2022/08/19追加 */

/* エコICTマークの取得  ▼ 2022/08/19追加 */
.eco-ictmark_section p:not(:first-child) {
	margin-top: 0;
}

/* エコICTマークの取得  ▲ 2022/08/19追加 */

/* ソリューション環境ラベル  ▼ 2022/08/19追加 */
@media (min-width: 768px) {
	.main-visual-sub .label_b-head b {
		line-height: 1.2em;
	}

	.main-visual-sub .label_b-head b span {
		font-size: calc(5rem * 0.7);
	}
}

@media (max-width: 767px) {
	.main-visual-sub .label_b-head b {
		line-height: 1.2em;
	}

	.main-visual-sub .label_b-head b span {
		font-size: calc(3rem * 0.7);
	}
}

/* ソリューション環境ラベル  ▲ 2022/08/19追加 */

/* NTTコムウェアグループの社会貢献活動  ▼ 2022/08/19追加 */
/* ------------------------------------------------------------

	  PC | csr

	------------------------------------------------------------ */

@media screen and (min-width: 960px) {
	#main>.lead {
		color: #333;
		margin-bottom: 48px;
	}

	#main .article>.inner {
		margin-top: 40px;
	}


	/*
	 heading -[unique]-
	----------------------------------------*/
	/* lv2 */
	.heading+.paragraph>.em {
		font-size: 1.6rem;
		font-weight: bold;
		color: #333;
		display: block;
		margin-bottom: 8px;
	}

	/* social */
	.heading[layout="social"] {
		font-weight: bold;
		border-bottom: 2px solid #CC0033;
		padding: 16px;
		background-color: #f2f2f2;
	}

	.heading[layout="social"]+.paragraph {
		color: #333;
		margin-top: 16px;
	}


	/*
	 definition -[unique]-
	----------------------------------------*/
	/* social */
	.definition[layout="social"] .list+.list {
		margin-top: 48px;
	}

	.definition[layout="social"] .team {
		margin-bottom: 16px;
	}

	.definition[layout="social"] .team::after {
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		margin-top: 8px;
		background-color: #707070;
	}

	.definition[layout="social"] .team>span {
		font-weight: bold;
		position: relative;
		display: block;
		height: 100%;
		padding-left: 1em;
	}

	.definition[layout="social"] .team>span::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 4px;
		height: 100%;
		background-color: #CC0033;
	}

	.definition[layout="social"] .description+.description {
		margin-top: 16px;
	}

	.definition[layout="social"] .description::after {
		content: '';
		display: table;
		clear: both;
		height: 0;
	}

	.definition[layout="social"] .description .figure {
		float: right;
		width: 226px;
		margin-left: 16px;
	}

	.definition[layout="social"] .description .social-small-img {
		float: right;
		width: 178px !important;
		margin-left: 16px;
	}

	.definition[layout="social"] .description .figure[data-column-pc="2"] {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: calc(226px * 2 + 2%);
	}

	.definition[layout="social"] .description .figure[data-column-pc="3"] {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
		width: 532px;
	}

	.definition[layout="social"] .description .figure[data-column-pc="flex"] {
		display: -webkit-flex;
		display: -webkit-box;
		display: flex;
		width: 456px;
	}

	.definition[layout="social"] .description .figure .image {
		box-sizing: border-box;
		display: block;
		width: 100%;
		height: auto;
	}

	.definition[layout="social"] .description .figure .image+.image {
		margin-top: 16px;
	}

	.definition[layout="social"] .description .figure[data-column-pc="2"] .image {
		width: auto;
		max-width: 100%;
		max-height: 169px;
		margin-top: 0;
		margin-bottom: 10px;
		margin-left: 2%;
		align-self: flex-start;
	}
	.definition[layout="social"] .description .figure[data-column-pc="2"] .image.ml40 {
		margin-left: 40px !important;
	}

	.definition[layout="social"] .description .figure[data-column-pc="2"] .image:nth-child(2n+1) {
	    margin-left: 0;
	}

	.definition[layout="social"] .description .figure[data-column-pc="3"] .image {
		-webkit-box-flex: 1;
		flex: 1 1 auto;
		width: auto;
		height: 123px;
		margin: 0;
		align-self: flex-start;
	}

	.definition[layout="social"] .description .figure[data-column-pc="3"] .image+.image {
		margin-left: 2%;
	}

	.definition[layout="social"] .description .figure[data-column-pc="flex"] .image {
		margin: 0;
	}

	.definition[layout="social"] .description .paragraph {
		color: #333;
		text-indent: 1em;
		overflow: hidden;
	}
	.definition[layout="social"] .description .paragraph.indent_text {
		padding-left: 2em;
		text-indent: -1em;
	}

	.definition[layout="social"] .description .paragraph+.paragraph {
		margin-top: 1em;
	}

	.imgcaption {
		font-size: 13px;
		margin-top: 3px;
	}

	/*===================== ▼ 2023/12/08追加（更新）*/
	.definition[layout="social"] .description ul {
		padding-bottom: 3rem;
	}

	.definition[layout="social"] .description ul li:before {
		content: "・";
		color: #CC0033;
	}

	/*===================== ▲ 2023/12/08追加（更新）*/

}

/* ------------------------------------------------------------

  SP | csr

------------------------------------------------------------ */
@media screen and (max-width: 960px) {
	#main>.lead {
		color: #333;
		margin-bottom: 32px;
	}

	#main .article>.inner {
		margin-top: 40px;
	}


	/*
 heading -[unique]-
----------------------------------------*/
	/* lv2 */
	.heading+.paragraph>.em {
		font-size: 1.6rem;
		font-weight: bold;
		color: #333;
		display: block;
		margin-bottom: 8px;
	}

	/* social */
	.heading[layout="social"] {
		font-weight: bold;
		border-bottom: 2px solid #CC0033;
		padding: 16px;
		background-color: #f2f2f2;
	}

	.heading[layout="social"]+.paragraph {
		color: #333;
		margin-top: 16px;
	}


	/*
 definition -[unique]-
----------------------------------------*/
	/* social */
	.definition[layout="social"] .list+.list {
		margin-top: 48px;
	}

	.definition[layout="social"] .team {
		margin-bottom: 16px;
	}

	.definition[layout="social"] .team::after {
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		margin-top: 8px;
		background-color: #707070;
	}

	.definition[layout="social"] .team>span {
		font-weight: bold;
		position: relative;
		display: block;
		height: 100%;
		padding-left: 1em;
	}

	.definition[layout="social"] .team>span::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 4px;
		height: 100%;
		background-color: #CC0033;
	}

	.definition[layout="social"] .description+.description {
		margin-top: 16px;
	}

	.definition[layout="social"] .description::after {
		content: '';
		display: table;
		clear: both;
		height: 0;
	}

	.definition[layout="social"] .description .figure {
		display: block;
		width: 65%;
		margin: 0 auto;
		margin-bottom: 16px;
		/* overflow-x: scroll; */
		align-items: flex-start;
	}

	.definition[layout="social"] .description .figure .image {
		box-sizing: border-box;
		display: block;
		width: 100%;
		height: auto;
		-webkit-box-flex: 1;
		flex: 1;
		margin: 0 auto;
		padding-bottom: 8px;
	}
	.definition[layout="social"] .description .figure .image.wAuto {
		width: auto;
		max-width: 100%;
	}

	.definition[layout="social"] .description .figure .w130 {
		width: 130px;
	}

	.definition[layout="social"] .description .paragraph {
		color: #333;
		text-indent: 1em;
		overflow: hidden;
	}
	.definition[layout="social"] .description .paragraph.indent_text {
		padding-left: 2em;
		text-indent: -1em;
	}

	.definition[layout="social"] .description .paragraph+.paragraph {
		margin-top: 1em;
	}

	.imgcaption {
		font-size: 16px;
	}

	/*===================== ▼ 2023/12/08追加（更新）*/
	.definition[layout="social"] .description ul {
		padding-bottom: 3rem;
	}

	.definition[layout="social"] .description ul li:before {
		content: "・";
		color: #029E97;
	}

	/*===================== ▲ 2023/12/08追加（更新）*/

}

/* NTTコムウェアグループの社会貢献活動  ▲ 2022/08/19追加 */

/* ▼ 2022/12/15追加 */
.csrmanagement_pdf_link,
.themeContent_pdf_link {
	text-align: center;
	margin: 2rem auto 0 auto;
}

.csrmanagement_pdf_link .btn,
.themeContent_pdf_link .btn {
	display: block;
  position: relative;
	background-color: #CC0033;
	border: none;
	padding: 1.3rem 1rem;
	width: 80%;
	margin: 1rem auto 0 auto;
	color: #fff;
	font-weight: 500;
	font-size: 1.8rem;
}

.csrmanagement_pdf_link .btn:focus:after,
.themeContent_pdf_link .btn:focus:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 2px solid #888;
  width: calc(100% + 0.75em * 2);
  height: calc(100% + 0.75em * 2);
  content: '';
}

.csrmanagement_pdf_link .btn span,
.themeContent_pdf_link .btn span {
	border: 1px solid #ffffff;
	font-size: .88em;
	margin-left: 1rem;
	padding: 0 0.3rem;
}

@media screen and (max-width: 767px) {
	.csrmanagement_pdf_link .btn .themeContent_pdf_link .btn {
		width: 100%;
		font-size: 1.6rem;
	}

	.csrmanagement_pdf_link p,
	.themeContent_pdf_link p {
		text-align: left;
	}
}

/* ICTでの社会貢献  ▼ 2023/12/01追加 */

/* テキスト装飾 */
.text_border_top {
	position: relative;
	padding: 1rem;
	text-align: center;
}

.text_border_bottom {
	position: relative;
	padding: 1rem 0 .5rem;
	border-bottom: 3px solid #fff;
}

h3.text_border_bottom:not(.ict_h_p) {
	border-bottom: 3px solid #eff3f6;
}

.text_border_bottom {
	position: relative;
	padding: 1rem 0 .5rem;
	border-bottom: 3px solid #fff;
}

#ict .ict_message .innerBox {
	padding: 45px 30px 30px;
}

.text_border_top::before {
	position: absolute;
	top: -5px;
	left: calc(50% - 30px);
	width: 60px;
	height: 6px;
	content: '';
	background: #e84383;
}

.text_border_bottom::before {
	position: absolute;
	bottom: -3px;
	left: 0;
	width: 17.9%;
	height: 3px;
	content: '';
	background: #e84383;
}

#ict figcaption {
	text-align: left;
	position: relative;
	margin-left: 1.8rem;
}

#ict figcaption::before {
	content: '';
	width: 1.2rem;
	height: 1.2rem;
	border-radius: 50%;
	position: absolute;
	left: -1.8rem;
	top: .75rem;
	background: #e84383;
}

#ict figcaption.safety_figc::before,
.text_border_top.border_safety::before,
.text_border_bottom.border_safety::before {
	background: #70634A;
}

#ict figcaption.env_figc::before,
.text_border_top.border_env::before,
.text_border_bottom.border_env::before {
	background: #5CB531;
}

#ict figcaption.partner_figc::before,
.text_border_top.border_partner::before,
.text_border_bottom.border_partner::before {
	background: #009E98;
}

#ict figcaption.business_figc::before,
.text_border_top.border_business::before,
.text_border_bottom.border_business::before {
	background: #00479D;
}

#ict .main-visual .wcm {
	position: relative;
}

.br_960-1200 {
	display: none;
}

#status .right_item img,
#CollaboWorkSolution .right_item img {
	width: 520px;
}

#iown .left_item img {
	width: 592px;
}

@media screen and (min-width: 960px) and (max-width: 1200px) {
	.br_960-1200 {
		display: block;
	}
}

@media screen and (min-width: 960px) {
	span.h1_sdg_icon {
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translateY(-50%);
		box-shadow: 0px 0px 20px 30px #fff;
		border-radius: 50%;
	}

	span.h1_sdg_icon img {
		width: 90px;
	}

	#ict h2 {
		font-size: 30px;
		text-align: center;
	}

	#ict h3 {
		font-size: 24px;
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}

	#ict h3.ict_h_p {
		font-size: 20px;
	}

	#ict h3 sup {
		font-size: 16px;
		font-weight: bold;
	}

	.sdg_icon {
		display: flex;
		align-items: flex-end;
	}
	.sdg_icon_box {
		display: flex;
		align-items: center;
		margin-bottom: -0.5rem;
	}

	.sdg_icon_box span {
		font-size: 16px;
		position: relative;
		margin-right: 4rem;
		text-align: right;
		line-height: 1.25;
	}

	.sdg_icon_box span::after {
		content: '';
		position: absolute;
		right: -28px;
		top: 50%;
		transform: translateY(-50%);
		background: #CC0033;
		height: 15px;
		width: 13px;
		clip-path: polygon(0 0, 100% 50%, 0 100%);
	}

	.sdg_icon_box img {
		width: 60px;
		margin: 0 .25rem;
	}

	.sdg_icon_box img:last-child {
		margin-right: 0;
	}

	.sdg_icon_impact {
    flex-basis: 120px;
    flex-grow: 0;
    flex-shrink: 0;
    margin: 0 .25rem 0 10px;
	}

	.sdg_icon_dt {
		margin-bottom: 2px;
		font-size: 12px;
		font-weight: bold;
	}

	.sdg_icon_dt .br_sp {
		display: none;
	}

	.sdg_icon_dd {
		display: flex;
	}

	.sdg_icon_dd img {
		width: 60px;
        margin: 0 .25rem;
	}

	.ict_innerBox {
		display: flex;
		align-items: flex-start;
	}

	.ict_innerBox .ict_innerBox_item {
		max-width: 100%;
	}

	#status .ict_innerBox .ict_innerBox_item.left_item,
	#iown .ict_innerBox .ict_innerBox_item.right_item,
	#CollaboWorkSolution .ict_innerBox .ict_innerBox_item.left_item {
		width: 570px;
		background-color: #eff3f6;
		padding: 38px 30px;
	}

	#status .ict_innerBox .ict_innerBox_item.right_item,
	#CollaboWorkSolution .ict_innerBox .ict_innerBox_item.right_item,
  #themeContentDiv .ict_innerBox .ict_innerBox_item.right_item {
		width: 520px;
		margin: 0 auto;
	}

	#iown .ict_innerBox .ict_innerBox_item.left_item {
		width: 592px;
		margin-right: 0.7%;
	}

	#iown .ict_innerBox .ict_innerBox_item.right_item {
		margin-left: 0.7%;
	}

	#status .ict_innerBox .ict_innerBox_item.right_item,
	#CollaboWorkSolution .ict_innerBox .ict_innerBox_item.right_item,
  #themeContentDiv .ict_innerBox .ict_innerBox_item.right_item {
		text-align: center;
	}
}

@media screen and (max-width: 960px) {
	span.h1_sdg_icon {
		display: inline-block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		box-shadow: 0px 0px 20px 26px #fff;
		border-radius: 50%;
		right: 30px;
	}

	span.h1_sdg_icon img {
		width: 14vw;
		max-width: 60px;
	}

	#ict h2 {
		font-size: 24px;
		text-align: center;
	}

	#ict h3 {
		font-size: 20px;
		display: flex;
		justify-content: center;
		align-items: baseline;
		flex-direction: column-reverse;
	}

	#ict h3.ict_h_p {
		font-size: 18px;
	}

	.sdg_icon {
		display: flex;
		justify-content: flex-end;
		align-items: flex-end;
		width: 100%;
		margin-bottom: 10px;
	}

	.sdg_icon_box {
		display: flex;
		align-items: center;
		margin-bottom: 0;
		display: flex;
		align-items: center;
		margin-left: auto;
	}

	.sdg_icon_box span {
		font-size: 12px;
		position: relative;
		margin-right: 3.6rem;
		text-align: right;
		line-height: 1.25;
	}

	.sdg_icon_box span::after {
		content: '';
		position: absolute;
		right: -24px;
		top: 50%;
		transform: translateY(-50%);
		background: #CC0033;
		height: 12px;
		width: 10px;
		clip-path: polygon(0 0, 100% 50%, 0 100%);
	}

	.sdg_icon_box img {
		width: 10vw;
		max-width: 40px;
		margin: 0 .25rem;
	}

	.sdg_icon_box img:last-child {
		margin-right: 0;
	}

	.sdg_icon_impact {
		width: 20vw;
        margin: 0 .25rem 0 10px;
	}

	.sdg_icon_dt {
		margin-bottom: 2px;
		font-size: 3vw;
		font-weight: bold;
	}


	.sdg_icon_dd {
		display: flex;
	}

	.sdg_icon_dd img {
		width: 10vw;
        margin: 0 .25rem;
	}

	.ict_innerBox {
		display: flex;
		flex-direction: column;
	}

	#iown .ict_innerBox {
		flex-direction: column-reverse;
	}

	.ict_innerBox .ict_innerBox_item {
		max-width: 100%;
	}

	#status .ict_innerBox .ict_innerBox_item.left_item,
	#iown .ict_innerBox .ict_innerBox_item.right_item,
	#CollaboWorkSolution .ict_innerBox .ict_innerBox_item.left_item {
		width: 100%;
		background-color: #eff3f6;
		padding: 38px 30px;
	}

	#status .ict_innerBox .ict_innerBox_item.right_item,
	#iown .ict_innerBox .ict_innerBox_item.left_item,
	#CollaboWorkSolution .ict_innerBox .ict_innerBox_item.right_item {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		margin-top: 24px;
		text-align: center;
	}

}

/* ICTでの社会貢献  ▲ 2023/12/01追加 */

/* 「安心・安全」「環境」「人材・パートナー」「公正な事業活動」共通  ▼ 2023/12/06追加 */
#themeContentDiv .right_item img {
	width: 592px;
}

#themeContentDiv .right_item ul li {
  position: relative;
  padding-left: 1.6rem;
  text-align: left;
}
#themeContentDiv .right_item ul li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '・';
}

#themeContentDiv .innerBox.due_diligence .right_item img {
	width: 490px;
}

@media screen and (min-width: 960px) {
	#themeContentDiv .ict_innerBox .ict_innerBox_item.left_item {
		width: 570px;
		background-color: #eff3f6;
		padding: 38px 30px;
	}

	#themeContentDiv .ict_innerBox .ict_innerBox_item.left_item {
		margin-right: 0.7%;
	}

	#themeContentDiv .ict_innerBox.due_diligence .ict_innerBox_item.right_item {
		margin: 0 auto;
	}

	#themeContentDiv .ict_innerBox.due_diligence .ict_innerBox_item.left_item {
		margin-right: 1.4%;
	}

}

@media screen and (max-width: 960px) {
	#themeContentDiv .ict_innerBox .ict_innerBox_item.left_item {
		width: 100%;
		background-color: #eff3f6;
		padding: 38px 30px;
	}

	#themeContentDiv .ict_innerBox .ict_innerBox_item.right_item {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		margin-top: 24px;
		text-align: center;
	}

}

/* 「安心・安全」「環境」「人材・パートナー」「公正な事業活動」共通  ▲ 2023/12/06追加 */

/* 公正な事業活動  ▼ 2023/12/06追加 */
#themeContentDiv .innerBox.due_diligence .right_item img {
	width: 490px;
}

@media screen and (min-width: 960px) {
	#themeContentDiv .ict_innerBox.due_diligence .ict_innerBox_item.right_item {
		margin: 0 auto;
	}

	#themeContentDiv .ict_innerBox.due_diligence .ict_innerBox_item.left_item {
		margin-right: 1.4%;
	}
}

/* 公正な事業活動  ▲ 2023/12/06追加 */

/* 「安心・安全」  ▲ 2023/12/13追加 */

@media (min-width: 769px) {
  br.global-spOnly {
    display: none;
  }
}

@media (max-width: 768px) {
  br.global-pcOnly {
    display: none;
  }
}

@media (min-width: 769px) {
  .table01__type01 {
    display: block;
    width: 100%;
    padding: 30px;
    background: #eff3f6;
  }
  .table01__thead01 {
    border: 1px solid #cc0033;
  }
  .table01__tr01 {
    display: flex;
  }
  .table01__th01,
  .table01__td01 {
  }
  .table01__th01.-width-1-pc,
  .table01__td01.-width-1-pc {
    flex-basis: calc(200 / 1110 * 100%);
  }
  .table01__th01.-width-2-pc,
  .table01__td01.-width-2-pc {
    flex-basis: calc(380 / 1110 * 100%);
  }
  .table01__th01.-width-3-pc,
  .table01__td01.-width-3-pc {
    flex-basis: calc(530 / 1110 * 100%);
  }
  .table01__th01.-width-4-pc,
  .table01__td01.-width-4-pc {
    flex-basis: calc((200 - 25) / 1110 * 100%);
  }
  .table01__th01 {
    display: block;
    flex-grow: 1;
    padding: 10px;
    background: #cc0033;
    color: #fff;
    text-align: center;
  }
  .table01__th01:not(:last-child) {
    border-right: 1px solid #fff;
  }
  .table01__txt01 {
    font-size: 20px;
  }
  .table01__tbody01 {
    border: 1px solid #222;
    background: #fff;
  }
  .table01__inner01 {
    position: relative;
  }
  .table01__inner01 .table01__tr02:first-child .table01__td01 {
    border-top: 1px solid #222;
  }
  .table01__tr02 {
    display: flex;
  }
  .table01__tr02:not(:first-child) .table01__td01 {
    border-top: 1px solid #222;
  }
  .table01__td01 {
  }
  .table01__td01:not(:last-child) {
    border-right: 1px solid #222;
  }
  .table01__td01.-type-1-pc {
    margin-left: calc(25 / 1100 * 100%);
    border-left: 1px solid #222;
  }
  .table01__td01-1 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 22px 25px;
  }
  .table01__td01.-type-2-pc .table01__td01-1 {
    display: flex;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    width: calc((200 - 25) / 1110 * 100%);
    height: 100%;
    border: 1px solid #222;
    border-bottom: 0;
    margin-left: calc(25 / 1100 * 100%);
    background: #fff;
  }
  .table01__txt02 {
    font-size: 20px;
  }
  .table01__txt02.-color-pink {
    color: #e84383;
  }
  .table01__txt02.-color-brown {
    color: #70634a;
  }
  .table01__txt02.-color-bluegreen {
    color: #009e98;
  }
  .table01__list01 {
  }
  .table01__list01.-disc-pink .table01__item01:before {
    background: #e84383;
  }
  .table01__list01.-disc-brown .table01__item01:before {
    background: #70634a;
  }
  .table01__list01.-disc-bluegreen .table01__item01:before {
    background: #009e98;
  }
  .table01__item01 {
    position: relative;
    padding-left: 22px;
  }
  .table01__item01:not(:last-child) {
    margin-bottom: 10px;
  }
  .table01__item01:before {
    display: block;
    position: absolute;
    top: 9px;
    left: 0;
    width: 12px;
    height: 12px;
    border-radius: 100px;
    background: #222;
    content: '';
  }
  .table01__txt03 {
    font-size: 20px;
  }
  .table01__txt04 {
    font-size: 18px;
  }
}

@media (max-width: 768px) {
  .table01__type01 {
    display: block;
    width: 100%;
    padding: 1.5rem;
    background: #eff3f6;
  }
  .table01__thead01 {
    padding: 0 1rem 1rem;
    background: #cc0033;
  }
  .table01__tr01 {
  }
  .table01__th01 {
    display: block;
    padding: 1rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
  }
  .table01__th01.-border-1-sp {
    border: .1rem solid #fff;
  }
  .table01__th01.-border-1-sp + .table01__th01.-border-1-sp {
    border-top: 0;
  }
  .table01__th01.-type-1-sp {
    margin-bottom: .5rem;
    padding-top: 1.5rem;
  }
  .table01__txt01 {
    font-size: 1.6rem;
  }
  .table01__tbody01 {
    padding-top: 2rem;
  }
  .table01__inner01 {
    padding: 1.5rem 0;
    background: #fff;
  }
  .table01__inner01 .table01__tr02 {
    padding-top: 0;
    padding-bottom: 0;
    background: transparent;
  }
  .table01__inner01 .table01__tr02:not(:last-child) {
    margin-bottom: 0;
  }
  .table01__inner01 .table01__tr02:not(:last-child) {
    margin-bottom: 1rem;
  }
  .table01__tr02 {
    display: block;
    padding: 1.5rem 1rem;
    background: #fff;
  }
  .table01__tr02:not(:last-child) {
    margin-bottom: 2rem;
  }
  .table01__td01 {
  }
  .table01__td01:empty {
    display: none;
  }
  .table01__td01.-type-1-sp {
    margin-bottom: 1.5rem;
  }
  .table01__td01.-type-2-sp {
    border: .1rem solid #222;
    padding: 1.5rem;
  }
  .table01__td01.-type-2-sp + .table01__td01.-type-2-sp {
    border-top: 0;
  }
  .table01__td01-1 {
  }
  .table01__txt02 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
  }
  .table01__txt02.-color-pink {
    color: #e84383;
  }
  .table01__txt02.-color-brown {
    color: #70634a;
  }
  .table01__txt02.-color-bluegreen {
    color: #009e98;
  }
  .table01__list01 {
    text-align: center;
  }
  .table01__list01.-disc-pink .table01__item01:before {
    background: #e84383;
  }
  .table01__list01.-disc-brown .table01__item01:before {
    background: #70634a;
  }
  .table01__list01.-disc-bluegreen .table01__item01:before {
    background: #009e98;
  }
  .table01__item01 {
    display: inline-block;
    position: relative;
    padding-left: 18px;
  }
  .table01__item01:not(:last-child) {
    margin-bottom: 10px;
  }
  .table01__item01:before {
    display: block;
    position: absolute;
    top: 8px;
    left: 0;
    width: 12px;
    height: 12px;
    border-radius: 100px;
    background: #222;
    content: '';
  }
  .table01__txt03 {
    font-size: 1.6rem;
  }
  .table01__txt04 {
    font-size: 1.6rem;
  }
}

.icon_pc-pink {
  display: block;
  position: relative;
  padding-left: 5.5rem;
}
.icon_pc-pink:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 5.0rem;
  height: 5.0rem;
  background: url(/assets/img/csr/icon_pc-pink.svg) no-repeat center top / 100% auto;
  content: '';
}

.text-green {
  color: #CC0033 !important;
}

.text-red {
  color: #CC0033 !important;
}
