body {
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
}

p {
	margin: 0;
}

/* ------------------ move ment ------------------*/
.move-ment {
	opacity: 0;
	visibility: hidden;
	transition: all 1s;
	transform: translateY(150px);
}
.move-ment-active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* ------------------ title ------------------*/
.title-en {
	width: 300px;
	margin: 15px auto 0 auto;
	display: flex;
	align-items: center;
}
.title-en span {
	width: 90px;
	height: 3px;
	background-color: #B52C2C;
	display: block;
}
.title-en p {
	padding: 0 15px;
	margin: 0 auto;
	font-weight: bold;
	color: #B52C2C;
}
.title-jp {
	margin: 0 auto 15px auto;
	font-weight: bold;
	text-align: center;
}

/* ------------------ footer ------------------*/
footer small {
	display: block;
	padding: 10px 0;
	color: #FFF;
	text-align: center;
	background-color: #B83230;
}

@media screen and (min-width: 1080px) {
	/* ------------------ line ------------------*/
	.induction {
		font-size: 24px;
		text-align: center;
		color: #FFD300;
		font-weight: bold;
	}
	.line-box {
		width: 510px;
		height: 100px;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #06C755;
		text-decoration: none;
		box-shadow: 0px 5px 15px 1px rgba(0, 0, 0, 0.5);
	}
	.line-box p {
		font-size: 30px;
		font-weight: bold;
		color: #FFF;
	}

	/* ------------------ header ------------------*/
	.logo-img-box {
		width: 378px;
		height: 104px;
		margin: 0 auto;
	}
	.logo-img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.site-title {
		padding: 15px 0;
		text-align: center;
		color: #FFF;
		background-color: #E44C4C;
		font-size: 33px;
		font-weight: bold;
	}
	.site-title span {
		font-size: 45px;
	}

	/* ------------------ main visual ------------------*/
	#mv {
		width: 1080px;
		margin: 0 auto;
	}
	.mv-wrap {
		position: relative;
		height: 540px;
	}
	.mv-img-box {
		position: absolute;
		width: 100%;
		height: 100%;
	}
	.mv-img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.mv-catch-phrase {
		position: absolute;
		top: 50px;
		left: 50%;
		transform: translateX(-50%);
		font-size: 60px;
		font-weight: bold;
		background-color: rgba(240, 203, 97, 0.6);
		color: #FFF;
		text-align: center;
		text-shadow: 2px 5px 10px black;
	}
	.mv-catch-phrase:nth-of-type(1) {
		width: 400px;
		top: 10px;
	}
	.mv-catch-phrase:nth-of-type(2) {
		width: 600px;
		top: 110px;
	}
	.mv-point-wrap {
		width: 700px;
		position: absolute;
		top: 225px;
		left: 50%;
		transform: translateX(-50%);
		display: flex;
		justify-content: space-around;
	}
	.mv-point {
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 160px;
		height: 160px;
		background-color: #FFF;
		border-radius: 50%;
		box-shadow: 0px 4px 4px #FFF;
	}
	.mv-point p {
		font-size: 20px;
		color: #DE7C25;
		font-weight: bold;
	}
	.mv-point p span {
		font-size: 32px;
	}
	.mv-big-point {
		position: absolute;
		bottom: -200px;
		left: 50%;
		transform: translateX(-50%);
		width: 330px;
		height: 330px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		background: linear-gradient(#F1CC60, #E88B2D);
	}
	.mv-big-point p {
		text-align: center;
		font-size: 40px;
		font-weight: bold;
	}
	.mv-big-point p span {
		color: #FF0303;
		font-size: 70px;
	}
	/* ------------------ catch phrase ------------------*/
	.catch-phrase {
		margin-top: 200px;
		font-size: 48px;
		font-weight: bold;
		text-align: center;
	}
	.catch-phrase span {
		font-size: 90px;
		color: #B52C2C;
	}
	.catch-img-wrap {
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
		margin: 0 auto;
	}
	.catch-img-box {
		width: 340px;
		height: 200px;
		margin: 10px auto;
	}
	.catch-img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* ------------------ about ------------------*/
	.about-wrap {
		width: 1080px;
		margin: 0 auto;
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
	}
	.about-box {
		width: 300px;
		height: 242px;
		margin: 10px;
		background-color: #E44C4C;
	}
	.num {
		width: 70px;
		height: 70px;
		margin: 15px auto 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 50%;
		background-color: #FFF;
		text-align: center;
		font-size: 30px;
		font-weight: bold;
	}
	.detail {
		margin-top: 25px;
		padding: 10px;
		text-align: center;
		color: #FFF;
		font-size: 20px;
		font-weight: bold;
	}

	/* ------------------ money ------------------*/
	#money {
		margin: 50px 0;
		background-color: #B83230;
	}
	.money-detail {
		padding: 100px 0;
		text-align: center;
		color: #FFF;
		font-size: 36px;
		font-weight: bold;
	}
	.under-line {
		text-decoration: underline 4px solid;
	}
	.big-font {
		font-size: 130px;
	}

	/* ------------------ detail ------------------*/
	#detail {
		margin: 50px 0;
	}
	.detail-wrap {
		margin: 0 auto;
	}
	.detail-box {
		width: 660px;
		margin: 20px auto;
	}
	.detail-title {
		padding: 8px 0;
		text-align: center;
		color: #FFF;
		background-color: #E44C4C;
	}
	.detail-text-box {
		padding: 10px 25px;
		box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
	}
	.detail-text-box p {
		text-align: center;
	}
	td:nth-child(1) {
		width: 160px;
		height: 30px;
		padding-right: 15px;
	}

	/* ------------------ car ------------------*/
	.car-wrap {
		width: 1080px;
		margin: 0 auto;
	}
	.car-box {
		width: 940px;
		margin: 0 auto;
	}
	.car-img-box {
		width: 940px;
		height: 560px;
		margin: 25px 0;
	}
	.car-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.car-name {
		font-weight: bold;
		text-align: center;
	}
}

@media screen and (max-width: 1080px) {
	/* ------------------ line ------------------*/
	.induction {
		font-size: 24px;
		text-align: center;
		color: #FFD300;
		font-weight: bold;
	}
	.line-box {
		width: 90%;
		height: 100px;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #06C755;
		text-decoration: none;
		box-shadow: 0px 5px 15px 1px rgba(0, 0, 0, 0.5);
	}
	.line-box p {
		text-align: center;
		font-size: 22px;
		font-weight: bold;
		color: #FFF;
	}
	.line-logo-wrap {
		width: 50px;
		height: 50px;
	}
	.line-logo-wrap img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* ------------------ header ------------------*/
	.logo-img-box {
		width: 378px;
		height: 104px;
		margin: 0 auto;
	}
	.logo-img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.site-title {
		padding: 15px 0;
		text-align: center;
		color: #FFF;
		background-color: #E44C4C;
		font-size: 24px;
		font-weight: bold;
	}
	.site-title span {
		font-size: 37px;
	}

	/* ------------------ main visual ------------------*/
	.mv-wrap {
		position: relative;
		height: 400px;
	}
	.mv-img-box {
		position: absolute;
		width: 100%;
		height: 100%;
	}
	.mv-img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.mv-catch-phrase {
		position: absolute;
		width: 90%;
		margin: 0 auto;
		top: 50px;
		left: 50%;
		transform: translateX(-50%);
		font-size: 40px;
		font-weight: bold;
		background-color: rgba(240, 203, 97, 0.6);
		color: #FFF;
		text-align: center;
		text-shadow: 2px 5px 10px black;
	}
	.mv-catch-phrase:nth-of-type(1) {
		width: 60%;
		top: 10px;
	}
	.mv-catch-phrase:nth-of-type(2) {
		width: 90%;
		top: 80px;
		font-size: 36px;
	}
	.mv-point-wrap {
		position: absolute;
		width: 90%;
		bottom: 70px;
		left: 50%;
		transform: translateX(-50%);
		display: flex;
		justify-content: space-around;
	}
	.mv-point {
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 110px;
		height: 110px;
		background-color: #FFF;
		border-radius: 50%;
		box-shadow: 0px 4px 4px #FFF;
	}
	.mv-point p {
		font-size: 14px;
		color: #DE7C25;
		font-weight: bold;
	}
	.mv-point p span {
		font-size: 24px;
	}
	.mv-big-point {
		position: absolute;
		bottom: -350px;
		left: 50%;
		transform: translateX(-50%);
		width: 330px;
		height: 330px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		background: linear-gradient(#F1CC60, #E88B2D);
	}
	.mv-big-point p {
		text-align: center;
		font-size: 40px;
		font-weight: bold;
	}
	.mv-big-point p span {
		color: #FF0303;
		font-size: 70px;
	}

	/* ------------------ catch phrase ------------------*/
	.catch-phrase {
		width: 90%;
		margin: 370px auto 50px auto;
		font-size: 18px;
		font-weight: bold;
		text-align: center;
	}
	.catch-phrase span {
		font-size: 33px;
		color: #B52C2C;
	}
	.catch-img-wrap {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.catch-img-box {
		width: 300px;
		height: 200px;
		margin: 10px auto;
	}
	.catch-img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* ------------------ about ------------------*/
	.about-wrap {
		margin: 0 auto;
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
	}
	.about-box {
		width: 300px;
		height: 242px;
		margin: 10px;
		background-color: #E44C4C;
	}
	.num {
		width: 70px;
		height: 70px;
		margin: 15px auto 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 50%;
		background-color: #FFF;
		text-align: center;
		font-size: 30px;
		font-weight: bold;
	}
	.detail {
		margin-top: 25px;
		padding: 10px;
		text-align: center;
		color: #FFF;
		font-size: 20px;
		font-weight: bold;
	}

	/* ------------------ money ------------------*/
	#money {
		margin: 50px 0;
		background-color: #B83230;
	}
	.money-detail {
		padding: 100px 0;
		text-align: center;
		color: #FFF;
		font-size: 36px;
		font-weight: bold;
	}
	.under-line {
		text-decoration: underline 4px solid;
	}
	.big-font {
		font-size: 130px;
	}

	/* ------------------ detail ------------------*/
	#detail {
		margin: 50px 0;
	}
	.detail-wrap {
		margin: 0 auto;
	}
	.detail-box {
		width: 90%;
		margin: 20px auto;
	}
	.detail-title {
		padding: 8px 0;
		text-align: center;
		color: #FFF;
		background-color: #E44C4C;
	}
	.detail-text-box {
		padding: 10px 25px;
		box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
	}
	.detail-text-box p {
		text-align: center;
	}
	td:nth-child(1) {
		width: 150px;
		height: 60px;
		padding-right: 5px;
	}

	/* ------------------ car ------------------*/
	.car-wrap {
		width: 90%;
		margin: 0 auto;
	}
	.car-box {
		width: 100%;
		margin: 0 auto;
	}
	.car-img-box {
		width: 100%;
		height: 200px;
		margin: 25px 0;
	}
	.car-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.car-name {
		font-weight: bold;
		text-align: center;
	}
}