@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap');

#content {
	padding-bottom: var(--50px);
}

/* h2 */
#content h2 {
	text-align: center;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 500;
	background-color: #005bac;
	padding: 0.8em;
	line-height: 1.4;
	font-size: var(--16px);
	position: relative;
	margin-bottom: var(--40px);
	letter-spacing: 0.3em;
	color: #fff;
}
#content h2::after {
	content: " ";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: var(--12px) var(--10px) 0 var(--10px);
	border-color: #005bac transparent transparent transparent;
	display: block;
	position: absolute;
	left: 50%;
	bottom: calc(0px - var(--12px));
	transform: translateX(-50%);
}
#content.ecobag h2 {
	background-color:#ffe23f;
	color: #222;
}
#content.ecobag h2::after {
	border-color: #ffe23f transparent transparent transparent;
}
/* h4 */
h4 {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
	font-size: var(--16px);
	color:#003256;
}

/* textWrap */
.textWrap {
	margin: 0 auto;
	padding-bottom: var(--45px);
}
.textWrap h3 {
	text-align: center;
	font-size: var(--16px);
	line-height: 1.5;
	letter-spacing: 0.3em;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 500;
	margin-bottom: var(--30px);
}
.textWrap h3 span.date {
	font-size: var(--16px);
	letter-spacing: 0.3em;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 500;
	display: table;
	margin: 0 auto;
	text-align: left;
}
.textWrap h3 span.note {
	font-size: var(--12px);
	display: block;
	letter-spacing: normal;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: normal;
	margin-bottom: var(--2px);
}
.textWrap p {
	line-height: 2;
	font-size: var(--12px);
}
.textWrap p b {
	font-weight: 600;
}
.textWrap p + p {
	margin-top: var(--20px);
}

/* float */
.imgL {
	float: left;
	margin: var(--10px) var(--25px) 0 0;
	zoom: 0.7;
}
.imgR {
	float: right;
	margin: var(--10px) 0 0 var(--25px);
	zoom: 0.7;
}
.floatWrap::after {
	content: "";
	display: block;
	clear: both;
}
@media (max-width: 768px) {
	.imgL,
	.imgR {
		float: none;
		display: block;
		margin: var(--30px) auto var(--20px);
		zoom: 1;
	}
}

/* bg_gray */
.bg_gray {
	background-color:#f6f6f6;
}

/* itemSlideWrap */
.itemSlideWrap {
	width: 90%;
	margin: 0 auto;
}
.itemSlideWrap figcaption {
	display: block;
	text-align: center;
	font-size: var(--11px);
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin-top: var(--10px);
}
.itemSlideWrap .p_detail {
	margin-top: var(--20px);
}
.itemSlideWrap .p_detail p {
	font-size: var(--12px);
	line-height: 1.6;
	letter-spacing: 0.05em;
}
.itemSlideWrap .swiper-prev,
.itemSlideWrap .swiper-next {
	position: absolute;
	top: calc(14.515vw - 32px);
	width: 15%;
	height: 15%;
	max-width: var(--45px);
	max-height: var(--45px);
	z-index: 2;
	cursor: pointer;
}
@media (min-width: 1185px) {
	.itemSlideWrap .swiper-prev,
	.itemSlideWrap .swiper-next {
		top: 140px;
	}
}
@media (max-width: 768px) {
	.itemSlideWrap .swiper-prev,
	.itemSlideWrap .swiper-next {
		top: calc(22.396vw - 22px);
	}
}
.itemSlideWrap .swiper-prev {
	left: 0;
}
.itemSlideWrap .swiper-next {
	right: 0;
}
.itemSlideWrap .swiper-prev.swiper-button-disabled,
.itemSlideWrap .swiper-next.swiper-button-disabled {
	opacity: 0.5;
	cursor: default;
}
.swiper:not(.swiper-initialized) + .swiper-prev,
.swiper:not(.swiper-initialized) + .swiper-prev + .swiper-next {
	display: none;
}

/* backtop */
.backtop {
	display: flex;
	justify-content: center;
	padding-top: var(--100px);
	padding-bottom: var(--100px);
	margin-top: var(--20px);
	background-image: url(/sdgs/feature/img/common/good_logo.png);
	background-size: var(--150px) auto;
	background-repeat: no-repeat;
	background-position: center top;
}
.backtop a:link,
.backtop a:visited {
	font-size: var(--14px);
	display: block;
	margin: 0 auto;
	text-decoration: none;
	background-color: #93bedf;
	text-align: center;
	padding: var(--8px) var(--10px) var(--10px);
	box-sizing: border-box;
	width: 88%;
	max-width: 330px;
	line-height: 1;
	color: #fff697;
	border-radius: var(--50px);
	transition: 0.3s;
}
@media (max-width: 768px) {
	.backtop a:link,
	.backtop a:visited {
		font-size: var(--16px);
		padding: var(--12px) var(--10px) var(--15px);
	}
}
