body,p {
	font-family: YakuHanJP,"Zen Maru Gothic","M PLUS Rounded 1c", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
}

h2,h4 {
	font-family: YakuHanJP,"Zen Kaku Gothic New","Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
	font-size: 20px;
	margin-bottom: 0;
    line-height: 1.4;
}
@media (min-width: 992px) {
	h2 {
		font-size: 30px;
	}
}
@media (min-width: 1200px) {
	h2 {
		font-size: 35px;
	}
}

p {
	line-height: 2.0rem;
	letter-spacing: 1.5px;
}
@media (min-width: 992px) {
	p {
		line-height: 2.5rem;
		letter-spacing: 1.8px;
		font-size: 20px;
	}
}
@media (min-width: 1200px) {
	p {	
		line-height: 2.7rem;
		letter-spacing: 2.0px;
		font-size: 24px;
	}
}

.bg-skyblue {
	background-color: #c8eee9;
}

@media (max-width: 449px) {
	.heroimg {
		height: 320px;
	}
}
@media (min-width: 450px) {
	.heroimg {
		height: clamp(23rem, 19.763rem + 20.00vw, 38.625rem);
	}
}

@media (max-width: 600px) {
	.carbonneutralimg {
		position: absolute;
		 bottom: 0%;
	  	left: 50%;
	  	 -webkit-transform: translate(-50%, 0%);
	  	-moz-transform: translate(-50%, 0%);
	  	transform: translate(-50%, 0%);
	  	width: 90%;
	  	z-index:1;
	}
}
@media (min-width: 601px) {
	.carbonneutralimg {
		position: absolute;
		 bottom: 0%;
	  	left: 50%;
	  	 -webkit-transform: translate(-50%, 0%);
	  	-moz-transform: translate(-50%, 0%);
	  	transform: translate(-50%, 0%);
	  	height: 80%;
	  	z-index:1;
	}
}
@media (min-width: 1200px) {
	.carbonneutralimg {
	  	height: 85%;
	}
}
@media (min-width: 1500px) {
	.carbonneutralimg {
	  	height: 90%;
	}
}

.loop {
	position: absolute;
	z-index: 0;
	width: 107%;
	bottom: 0%;
	left: 50%;
	 -webkit-transform: translate(-50%, 0%);
	-moz-transform: translate(-50%, 0%);
}
@media (min-width: 992px) {
	.loop {
		width: 101%;
	}
}


/*.loop {
    padding-top: 30px;
    padding-bottom: 30px;
    overflow: hidden;
}*/
.loop__box {
    display: flex;
    width: 100vw;
}
.loop__box img {
    min-width: 86vw;
}
.loop__box img:first-child {
    animation: loop 40s -45s linear infinite;
}
.loop__box img:last-child {
    animation: loop2 40s linear infinite;
}
@keyframes loop {
    0% {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(100%);
    }
}
@keyframes loop2 {
    0% {
        transform: translateX(-300%);
    }
    to {
        transform: translateX(0);
    }
}


.text-blue {
	color: #065ca7;
}

.number01 {
	width: 60px;
}
@media (min-width: 992px) {
	.number01 {
		width: 105px;
	}
}

.bg-lightgreen {
	background-color: #edf6ed;
}

.text-green {
	color: #00974b;
}

h3.h3 {
	padding: 15px 15px 15px 15px;
	border-top: 2.5px dashed #00974b;
	border-bottom: 2.5px dashed #00974b;
	line-height: 1.5;
}
@media (min-width: 1200px) {
	h3.h3 {
		font-size: 24px;
	}
}
@media (min-width: 1500px) {
	h3.h3 {
		font-size: 26px;
	}
}

.point {
	width: 65px;
    padding-right: 15px;
}
@media (min-width: 992px) {
	.point {
		width: 85px;
	}
}

.text-red {
	color: #c40018;
}

.bg-green-1 {
	border-bottom: 1px solid #198e49;
}

.fz-14 {
	font-size: 14px;
}
@media (min-width: 992px) {
	.fz-md-16 {
		font-size: 16px;
	}
}

@media (min-width:1200px) {
	.fz-xl-20 {
		font-size:20px;
	}
}

@media (min-width:992px) {
	.fz-lg-24 {
		font-size:24px;
	}
}

.lh-15 {
	line-height: 1.5;
}

.lh-18 {
	line-height: 1.8;
}

.fz-15 {
	font-size: 15px;
}

.fz-12 {
	font-size: 12px;
}

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

.border-blue-5 {
	border: 5px solid #065ca7;
	border-radius: 10px;
}
.border-blue-1 {
	border-bottom: 2px solid #065ca7;
}

.bg-blue {
	background-color: #065ca7;
}

.bg-lightyellow {
	background-color: #fffab9;
}

.rounded10 {
	 border-radius: 10px;
}

a.moushikomiform-btn2 {
    background-color: #009a84;
    color: #fff!important;
    border: 3px solid #009a84;
    border-radius: 30px;
    font-weight: bold;
    max-width: 500px;
    padding: 10px;
    font-size: 24px;
}
a.moushikomiform-btn2:hover {
    background-color: #fff;
    color: #009a84!important;
}

.footer-logo {
	width: 120px;
}
@media (min-width: 992px) {
	.footer-logo {
		width: 150px;
	}
}


.fadein {
    opacity: 0;
    transform: translate(0, 0);
    transition: all 1.5s;
}
.fadein.fadein-left {
    transform: translate(-60px, 0);
}
.fadein.fadein-right {
    transform: translate(60px, 0);
}
.fadein.fadein-up {
    transform: translate(0, -60px);
}
.fadein.fadein-bottom {
    transform: translate(0, 60px);
}
.fadein.scrollin {
    opacity: 1 !important;
    transform: translate(0, 0) !important;
}
