@charset "utf-8";
/* CSS Document */
html {
	/*height:100%;*/
}
body {
    text-align: center;
	margin:0;
	width:100%;
	background:#FFFCDB;
	position:relative;
	-webkit-text-size-adjust: 100%;
	font-family:"Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳＰゴシック", "MS PGothic", sans-serif;
	/*
	font-family: 'Noto Sans JP', sans-serif;
	font-family: 'Noto Serif JP', serif;
	*/
}

.clearfix:after {
    visibility: hidden;
    display: block;
    content: " ";
    clear: both;
    height: 0;
}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */

.nofloat{
	overflow:hidden;
	zoom:1;
}

img {
    border-style:none;
}

a {
	text-decoration: none;
}

/* a:link {
	color: #000000;
}

a:visited {
	color: #000000;
} */

ruby {
	ruby-align: distribute-space;
	ruby-overhang: auto;
	ruby-position: above;
}

input[type="submit"] {
   -webkit-appearance: none;
   /*border-radius: 0;*/
}

/* 各ベンダープレフィックスが取れた標準版！！(http://caniuse.com/#search=placeholder-shown) */
:placeholder-shown {
    color:#CCC;
}

/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
    color:#CCC;
}

/* Firefox 18- */
:-moz-placeholder {
    color:#CCC;
	opacity: 1;
}

/* Firefox 19+ */
::-moz-placeholder {
    color:#CCC;
	opacity: 1;
}

/* IE 10+ */
:-ms-input-placeholder {
    color:#CCC;
}

.a_block {
	display:block;
}

.img_block {
	display:block;
	margin: 0px auto;
}

.max_img {
	max-width:100%;
	height:auto;
}

.red_span {
	color:#F09100;
}

.bold_span {
	font-weight:bold;
}

.under_span {
	text-decoration:underline;
}

.inbl_span {
	display:inline-block;
	text-indent:0;
}

.br_1024 {
	display:none;
}

.br_768 {
	display:none;
}

.br_480 {
	display:none;
}

#wrapper {
	overflow-x:hidden;
	position: relative;
	z-index: 2;
}

#main {
	position: relative;
	z-index:1;
}

/*ヘッダー */

.header_logo {
	padding-bottom: 22px;
	background: url(../img/carbon-neutrality/expo/back01.webp) no-repeat center bottom/cover;
	position: relative;
	z-index: 2;
}

.header_logo01 {
	display: block;
	max-width: calc(100% - 40px);
	margin: 0 auto;
	padding: 0 20px;
}

/*ヘッダーここまで */

/*コンテンツ */

.wrapper_index01_big {
	padding: 40px 0 90px;
	position: relative;
	z-index: 1;
}

.wrapper_index01_big * {
	box-sizing: content-box;
}

.wrapper_index01 {
	margin: 0 auto;
}

.index_title01 {
	max-width: calc(100% - 60px);
	width: max-content;
	margin: 0 auto 30px;
	padding: 0 20px 10px;
	background: url(../img/carbon-neutrality/expo/back02.webp) no-repeat center bottom/contain;
	font-size: 32px;
	font-weight: bold;
	color: #231815;
	line-height: 45px;
	text-align: center;
}

.index_textbox01 {
	max-width: calc(100% - 40px);
	width: 890px;
	margin: 0 auto 10px !important;
	padding: 20px;
	background: #FFF;
	font-size: 18px;
	font-weight: bold;
	color: #231815;
	line-height: 35px;
	text-align: left;
}

.index_box01 {
	max-width: 1032px;
	margin: 0 auto;
	position: relative;
}

.index_box01_img01 {
	display: block;
	width: 100%;
	position: relative;
	z-index: 1;
}

.index_box01_imgbox01 {
	width: calc(100% * 390 / 1032);
	position: absolute;
	z-index: 2;
}

.index_box01_imgbox01_p01 {
	top: 2.7%;
	right: 0%;
}

.index_box01_imgbox01_p02 {
	top: 12.2%;
	left: 0%;
}

.index_box01_imgbox01_p03 {
	top: 24.5%;
	right: 0%;
}

.index_box01_imgbox01_p04 {
	top: 33.7%;
	left: 0%;
}

.index_box01_imgbox01_p05 {
	top: 42.7%;
	right: 0%;
}

.index_box01_imgbox01_p06 {
	top: 52.1%;
	left: 0%;
}

.index_box01_imgbox01_p07 {
	top: 64.2%;
	right: 0%;
}

.index_box01_imgbox01_p08 {
	top: 73.2%;
	left: 0%;
}

.index_box01_imgbox01_p09 {
	top: 82.4%;
	right: 0%;
}

.index_box01_imgbox01 a {
	display: block;
	position: relative;
}

.index_box01_imgbox01 a:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0);
	position: absolute;
	z-index: 2;
	transition-duration: 0.35s;
}

.index_box01_imgbox01:hover a:before {
	background: rgba(255,255,255,0.5);
	transition-duration: 0.35s;
}

.index_box01_imgbox01_img01 {
	display: block;
	width: 100%;
	position: relative;
	z-index: 1;
}

.index_ul01 {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	list-style: none;
	max-width: 910px;
	margin: 0 auto 20px;
	padding: 0 40px;
}

.index_ul01_li {
	width: calc(100% * 390 / 910);
	position: relative;
}

.index_ul01_li:first-child {
	top: -20px;
}

.index_ul01_li a {
	display: block;
}

.index_ul01_li_imgbox01 {
	position: relative;
}

.index_ul01_li_imgbox01_p01 {
	left: 20px;
}

.index_ul01_li_imgbox01_p02 {
}

.index_ul01_li_imgbox01_p03 {
}

.index_ul01_li_imgbox01_p04 {
	left: 20px;
}

.index_ul01_li_imgbox01:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0);
	position: absolute;
	z-index: 2;
	transition-duration: 0.35s;
}

.index_ul01_li:hover .index_ul01_li_imgbox01:before {
	background: rgba(255,255,255,0.5);
	transition-duration: 0.35s;
}

.index_ul01_li_imgbox01_img01 {
	display: block;
	width: 100%;
	position: relative;
	z-index: 1;
}

.index_ul01_li_textbox01 {
	max-width: calc(100% - 66px);
	margin: 30px 0;
	padding: 13px 15px 13px 10px;
	background: #FFF;
	border-left: #EA5545 24px solid;
	width: max-content;
	font-size: 22px;
	font-weight: bold;
	color: #231815;
	line-height: 30px;
	text-align: left;
	position: relative;
}

.index_ul01_li_textbox01:before,
.index_ul01_li_textbox01:after {
	content: "";
	width: 17px;
	height: 50%;
	position: absolute;
	left: 100%;
}

.index_ul01_li_textbox01:before {
	background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #FFF 50.5%) no-repeat top left/100% 100%;
	top: 0;
}

.index_ul01_li_textbox01:after {
	background: linear-gradient(to bottom left, rgba(255,255,255,0) 50%, #FFF 50.5%) no-repeat top left/100% 100%;
	bottom: 0;
}

.index_img01 {
	display: block;
	margin: 0 auto;
}

/*コンテンツここまで */

/*フッター */

/*フッターここまで */

/* ここまで1024px以上の幅の場合に適応される */

@media screen and (max-width: 1024px) {

	.br_1024 {
		display:block;
	}
	
}

@media screen and (max-width: 768px) {

	.br_768 {
		display:block;
	}
	
	.wrapper_index01_big {
		padding: 20px 0;
	}
	
	.index_title01 {
		padding: 0 15px 2px;
		font-size: 20px;
		line-height: 35px;
	}
	
	.index_textbox01 {
		padding: 15px;
		font-size: 16px;
		line-height: 30px;
	}
	
	.index_ul01 {
		padding: 0;
	}
	
	.index_ul01_li {
		width: calc((100% - 20px) / 2);
	}
	
	.index_ul01_li_imgbox01_p01 {
		left: 0px;
	}
	
	.index_ul01_li_imgbox01_p04 {
		left: 0px;
	}
	
	.index_ul01_li_textbox01 {
		max-width: calc(100% - 30px);
		margin: 15px 0;
		padding: 10px 5px 10px 5px;
		border-left: #EA5545 10px solid;
		font-size: 14px;
		line-height: 20px;
	}
	
	.index_ul01_li_textbox01:before,
	.index_ul01_li_textbox01:after {
		width: 10px;
	}

	.title--main {
        font-size: 1.5rem;
    }
}
	
}

@media screen and (max-width: 480px) {

	.br_480 {
		display:block;
	}
	
	.index_title01 {
		padding: 0 10px;
		font-size: 17px;
		line-height: 32px;
	}
	
	.index_title01 br {
		display: none;
	}
	
	.index_textbox01 {
		max-width: calc(100% - 20px);
		padding: 15px 10px;
		font-size: 14px;
		line-height: 26px;
	}
	
}

