
.contribution {
	margin-top: 35px;
overflow:auto;
}

.contribution_inside {
	padding-left: 40px;
	padding-right: 40px;
}

.contribution .contribution_hdg {
	background-color: #FFF;
	border: 2px solid #FF0000;
	border-radius: 38px;
	color: #FF0000;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 38px;
	margin-bottom: -19px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: 286px;
	z-index: 1;
}

.contribution .contribution_textb {
	text-align: center;
}

.contribution .contribution_textb .em {
	color: #FF0000;
	font-size: 2.5rem;
	font-weight: 700;
}

.contribution .contribution_textb .em+p {
	margin-top: 30px;
}

.contribution .basic_policy {
	border: 1.5px solid #FF0000;
	margin-top: 45px;
	padding: 20px 40px;
}

.contribution .basic_policy .basic_policy_hdg {
	color: #FF0000;
	font-size: 2.0rem;
	font-weight: 700;
}

.contribution .basic_policy ul {
	margin-top: 20px;
}

.contribution .basic_policy ul li {
	padding-left: 20px;
	position: relative;
}

.contribution .basic_policy ul li:nth-child(n+2) {
	margin-top: 5px;
}

.contribution .basic_policy ul li::before {
	background-color: #FF0000;
	border-radius: 100%;
	content: "";
	height: 10px;
	left: 0;
	position: absolute;
	top: 7px;
	width: 10px;
}


/* map
------------------ */
.contribution .contribution_map {
	background-image: url(/company/sustainability/img/minutes_map.png);
	background-size: cover;
	height: 515px;
	overflow: hidden;
	margin-bottom: 50px;
	position: relative;
	width: 700px;
margin:auto;
}

.contribution .contribution_map [class^="num_"] {
	background-repeat: no-repeat;
	background-position: center;
	display: block;
	height: 42px;
	margin-top: 0;
	opacity: 1;
	position: absolute;
	width: 44px;
	z-index: 1;
}

.contribution .contribution_map [class^="num_"].hover,
.contribution .contribution_map [class^="num_"].show {
	opacity: 1;
	z-index: 1;
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
}

.contribution .contribution_map [class^="area_"] {
	cursor: pointer;
	position: absolute;
	z-index: 1;
}

/* balloon */
.contribution .contribution_map [class^="balloon_"] {
	background-color: #FFF;
	border: 2px solid #FF0000;
	border-radius: 10px;
	display: none;
	padding: 20px;
	position: absolute;
	z-index: 11;
}

.contribution .contribution_map [class^="balloon_"]::before,
.contribution .contribution_map [class^="balloon_"]::after {
	border-style: solid;
	content: "";
	position: absolute;
}


/* --------- area 1 --------- */
.contribution .contribution_map .num_1 {
	left: 42px;
	top: 107px;
}

.contribution .contribution_map .area_1 {
	height: 177px;
	left: -108px;
	top: 86px;
	width: 266px;
	transform: rotate(28deg) skewX(-30deg);
}

.contribution .contribution_map .area_1::before {
	content: "";
	display: block;
	height: 41px;
	left: 0%;
	position: absolute;
	top: -40px;
	width: 118px;
}

/* balloon */
.contribution .contribution_map .balloon_01 {
	left: 104px;
	top: 33px;
}

.contribution .contribution_map .balloon_01::before {
	border-width: 7.5px 10px 7.5px 0;
	border-color: transparent #FF0000 transparent transparent;
	left: -10px;
	top: 86px;
}

.contribution .contribution_map .balloon_01::after {
	border-width: 9px 14px 9px 0;
	border-color: transparent #FFF transparent transparent;
	left: -8px;
	top: 84px;
}


/* --------- area 2 --------- */
.contribution .contribution_map .num_2 {
	left: 175px;
	top: 30px;
}

.contribution .contribution_map .area_2 {
	height: 80px;
	left: 126px;
	top: 70px;
	width: 143px;
	transform: rotate(28deg) skewX(-30deg);
}

.contribution .contribution_map .area_2::before {
	content: "";
	display: block;
	height: 25px;
	left: 42px;
	position: absolute;
	top: 78px;
	width: 100px;
}


/* balloon */
.contribution .contribution_map .balloon_02 {
	left: 123px;
	top: 109px;
}

.contribution .contribution_map .balloon_02::before {
	border-width: 0 7.5px 10px 7.5px;
	border-color: transparent transparent #FF0000 transparent;
	left: 64px;
	top: -10px;
}

.contribution .contribution_map .balloon_02::after {
	border-width: 0 9.5px 14px 9.5px;
	border-color: transparent transparent #FFF transparent;
	left: 62px;
	top: -7px;
}


/* --------- area 3 --------- */
.contribution .contribution_map .num_3 {
	left: 387px;
	top: 85px;
}

.contribution .contribution_map .area_3 {
	height: 98px;
	left: 336px;
	top: 121px;
	width: 158px;
	transform: rotate(28deg) skewX(-8deg);
}


/* balloon */
.contribution .contribution_map .balloon_03 {
	left: 160px;
	top: 160px;
}

.contribution .contribution_map .balloon_03::before,
.contribution .contribution_map .balloon_03::after {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.contribution .contribution_map .balloon_03::before {
	border-width: 0 7.5px 10px 7.5px;
	border-color: transparent transparent #FF0000 transparent;
	top: -10px;
}

.contribution .contribution_map .balloon_03::after {
	border-width: 0 9.5px 14px 9.5px;
	border-color: transparent transparent #FFF transparent;
	top: -7px;
}


/* --------- area 4 --------- */
.contribution .contribution_map .num_4 {
	left: 305px;
	top: 160px;
}

.contribution .contribution_map .area_4 {
	height: 60px;
	left: 270px;
	top: 206px;
	width: 144px;
	transform: rotate(28deg) skewX(-30deg);
}


/* balloon */
.contribution .contribution_map .balloon_04 {
	left: 79px;
	top: 226px;
}

.contribution .contribution_map .balloon_04::before,
.contribution .contribution_map .balloon_04::after {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.contribution .contribution_map .balloon_04::before {
	border-width: 0 7.5px 10px 7.5px;
	border-color: transparent transparent #FF0000 transparent;
	top: -10px;
}

.contribution .contribution_map .balloon_04::after {
	border-width: 0 9.5px 14px 9.5px;
	border-color: transparent transparent #FFF transparent;
	top: -7px;
}


/* --------- area 5 --------- */
.contribution .contribution_map .num_5 {
	left: 200px;
	top: 230px;
}

.contribution .contribution_map .area_5 {
	height: 149px;
	left: 141px;
	top: 227px;
	width: 166px;
	transform: rotate(28deg) skewX(-30deg);
}



/* balloon */
.contribution .contribution_map .balloon_05 {
	left: 253px;
	top: 120px;
}

.contribution .contribution_map .balloon_05::before,
.contribution .contribution_map .balloon_05::after {
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.contribution .contribution_map .balloon_05::before {
	border-width: 7.5px 10px 7.5px 0;
	border-color: transparent #FF0000 transparent transparent;
	left: -10px;

}

.contribution .contribution_map .balloon_05::after {
	border-width: 9px 14px 9px 0;
	border-color: transparent #FFF transparent transparent;
	left: -8px;
}


/* --------- area 6 --------- */
.contribution .contribution_map .num_6 {
	left: 74px;
	top: 400px;
}

.contribution .contribution_map .area_6 {
	height: 164px;
	left: -105px;
	top: 396px;
	width: 389px;
	transform: rotate(28deg) skewX(-30deg);
}


/* balloon */
.contribution .contribution_map .balloon_06 {
	left: 138px;
	top: 324px;
}

.contribution .contribution_map .balloon_06::before {
	border-width: 7.5px 10px 7.5px 0;
	border-color: transparent #FF0000 transparent transparent;
	left: -10px;
	top: 86px;
}

.contribution .contribution_map .balloon_06::after {
	border-width: 9px 14px 9px 0;
	border-color: transparent #FFF transparent transparent;
	left: -8px;
	top: 84px;
}


/* --------- area 7 --------- */
.contribution .contribution_map .num_7 {
	left: 365px;
	top: 345px;
}

.contribution .contribution_map .area_7 {
	height: 100px;
	left: 281px;
	top: 377px;
	width: 220px;
	transform: rotate(28deg) skewX(-30deg);
}


/* balloon */
.contribution .contribution_map .balloon_07 {
	left: 23px;
	top: 30px;
}

.contribution .contribution_map .balloon_07::before,
.contribution .contribution_map .balloon_07::after {
	left: 60%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.contribution .contribution_map .balloon_07::before {
	border-width: 10px 7.5px 0 7.5px;
	border-color: #FF0000 transparent transparent transparent;
	bottom: -10px;
}

.contribution .contribution_map .balloon_07::after {
	border-width: 18px 11px 0 11px;
	border-color: #FFF transparent transparent transparent;
	bottom: -8px;
}


/* --------- area 8 --------- */
.contribution .contribution_map .num_8 {
	left: 479px;
	top: 273px;
}

.contribution .contribution_map .area_8 {
	height: 114px;
	left: 400px;
	top: 292px;
	width: 210px;
	transform: rotate(28deg) skewX(-30deg);
}

/* balloon */
.contribution .contribution_map .balloon_08 {
	left: 257px;
	top: 146px;
}

.contribution .contribution_map .balloon_08::before {
	border-width: 7.5px 0 7.5px 10px;
	border-color: transparent transparent transparent #FF0000;
	right: -10px;
	top: 135px;
}

.contribution .contribution_map .balloon_08::after {
	border-width: 10.5px 0 10.5px 18px;
	border-color: transparent transparent transparent #FFF;
	right: -8px;
	top: 132px;
}


/* --------- area 9 --------- */
.contribution .contribution_map .num_9 {
	left: 565px;
	top: 75px;
}

.contribution .contribution_map .area_9 {
	height: 133px;
	left: 366px;
	top: 55px;
	width: 425px;
	transform: rotate(27deg) skewX(-34deg);
}

/* balloon */
.contribution .contribution_map .balloon_09 {
	left: 60px;
	top: 32px;
}

.contribution .contribution_map .balloon_09::before {
	border-width: 7.5px 0 7.5px 10px;
	border-color: transparent transparent transparent #FF0000;
	right: -10px;
	top: 50px;
}

.contribution .contribution_map .balloon_09::after {
	border-width: 10.5px 0 10.5px 18px;
	border-color: transparent transparent transparent #FFF;
	right: -8px;
	top: 47px;
}


/* --------- area 10 --------- */
.contribution .contribution_map .num_10 {
	left: 590px;
	top: 425px;
}

.contribution .contribution_map .area_10 {
	height: 224px;
	left: 562px;
	top: 363px;
	width: 151px;
	transform: rotate(28deg) skewX(-27deg);
}

/* balloon */
.contribution .contribution_map .balloon_10 {
	left: 166px;
	top: 220px;
}

.contribution .contribution_map .balloon_10::before {
	border-width: 7.5px 0 7.5px 10px;
	border-color: transparent transparent transparent #FF0000;
	bottom: 50px;
	right: -10px;
}

.contribution .contribution_map .balloon_10::after {
	border-width: 10.5px 0 10.5px 18px;
	border-color: transparent transparent transparent #FFF;
	bottom: 47px;
	right: -8px;
}

.contribution .each_col .ph img {
	height: auto;
	width: 100%;
}


.contribution .each_col .txtb {
	font-weight: 700;
}

.contribution .each_col .txtb .em {
	color: #FF0000;
	font-size: 1.5rem;
}

.contribution .each_col .txtb .tx {
	font-size: 1.2rem;
}

.contribution [data-set^="set1"] {
	width: 450px;
}

.contribution [data-set^="set1"] .each_col {
	display: flex;
	justify-content: space-between;
gap: 10px;
}

.contribution [data-set^="set1"] .each_col+.each_col {
	border-top: 2px solid #FF0000;
	flex-direction: row-reverse;
	margin-top: 20px;
	padding-top: 20px;
}

.contribution [data-set^="set1_reverse"] .each_col {
	flex-direction: row-reverse;
}

.contribution [data-set^="set1"] .each_col .ph {
	width: 161px;
}

.contribution [data-set^="set1"] .each_col .txtb {
	display: flex;
	align-items: center;
	width: 275px;
}

.contribution [data-set^="set2"] .bln_inside {
	display: flex;
}

.contribution [data-set^="set2"] .bln_inside .each_col:nth-child(n+2) {
	margin-left: 40px;
	position: relative;
}

.contribution [data-set^="set2"] .bln_inside .each_col:nth-child(n+2)::before {
	background-color: #FF0000;
	content: "";
	height: 100%;
	left: -20px;
	position: absolute;
	top: 0;
	width: 2px;
}

.contribution [data-set^="set2"] .each_col {
	max-width: 161px;
	width: 100%;
}

.contribution [data-set^="set2"] .each_col .txtb {
	margin-top: 8px;
}

.contribution [data-set^="set2"] .each_col .txtb .tx {
	margin-top: 3px;
}

.ov_balloon {
	cursor: pointer;
	display: none;
	height: 100%;
	left: 0;
	margin-top: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 10;
}


