@charset "utf-8";

/* ----------------------------------------------
メインビジュアル
------------------------------------------------*/
.main-visual {
	position: relative;
	background: url(../../img/top/main-visual-bg.png) no-repeat center;
	background-size: cover;
	background-color: var(--base-beige);
	background-position: bottom center;
	min-height: min(76.1111vw, 920px);
	z-index: 1;
}

.main-visual__txt {
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	z-index: 5;
}

.main-visual__catch {
	font-size: var(--fontsize100);
	font-family: "Sawarabi Gothic", sans-serif;
	white-space: nowrap;
	line-height: 1.3;
	margin-bottom: min(20/1200 * 100vw, 20px);
}

.main-visual__catch--small {
	font-size: var(--fontsize28);
	white-space: nowrap;
	margin-bottom: min(55/1200 * 100vw, 55px);
}

/* ボタン
-------------------------- */
.main-visual__link {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: min(28/1200 * 100vw, 28px);
	width: 100%;
}

.main-visual__btn a {
	position: relative;
	display: block;
	width: 100%;
	padding: 19px min(75/1200 * 100vw, 75px) 19px min(105/1200 * 100vw, 105px);
	border-radius: 10px;
	font-size: var(--fontsize24);
	color: var(--base-white);
}

.main-visual__btn--green a {
	background: var(--base-green);
	padding: 19px min(63/1200 * 100vw, 63px) 19px min(95/1200 * 100vw, 95px);
}

.main-visual__btn--green a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 25px;
	translate: 0 -50%;
	background: url(../../img/common/search-icon.png) no-repeat center;
	background-size: min(34/1200 * 100vw, 34px) min(34/1200 * 100vw, 34px);
	width: min(34/1200 * 100vw, 34px);
	height: min(34/1200 * 100vw, 34px);
}

.main-visual__btn--red a {
	background: var(--base-red);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 19px min(75 / 1200 * 100vw, 75px);
}

/* .main-visual__btn--red a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 25px;
	translate: 0 -50%;
	background: url(../../img/common/mail-icon.png) no-repeat center;
	background-size: min(33/1200 * 100vw, 33px) min(29/1200 * 100vw, 29px);
	width: min(33/1200 * 100vw, 33px);
	height: min(29/1200 * 100vw, 29px);
} */

/* メイン写真
-------------------------- */
.main-visual__illust {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	/* pointer-events: none; */
}

.main-visual__illust img {
	width: 100%;
	height: auto;
}

.main-visual__illust-item1 {
	position: absolute;
	top: 16%;
	left: 0;
	width: 20%;
	max-width: 350px;
}

.main-visual__illust-item2 {
	position: absolute;
	top: 16%;
	right: 0;
	width: 29%;
	max-width: 565px;
}

.main-visual__illust-item3 {
	position: absolute;
	bottom: 40px;
	left: 4%;
	width: 19%;
	max-width: 360px;
}

.main-visual__illust-item4 {
	position: absolute;
	bottom: 15px;
	right: 0;
	width: 21%;
	max-width: 410px;
}

@media screen and (max-width: 767px) {
	.main-visual {
		height: 100vh;
		max-height: 680px;
		min-height: initial;
	}

	.main-visual__txt {
		width: 90vw;
	}

	.main-visual__catch {
		font-size: var(--fontsize40);
		font-family: "Sawarabi Gothic", sans-serif;
		white-space: nowrap;
		line-height: 1.3;
		margin-bottom: min(20/1200 * 100vw, 20px);
	}

	.main-visual__catch {
		font-size: var(--fontsize40);
		font-family: "Sawarabi Gothic", sans-serif;
		white-space: nowrap;
		line-height: 1.3;
		margin-bottom: min(20/390 * 100vw, 20px);
	}

	.main-visual__catch--small {
		font-size: var(--fontsize18);
		text-align: center;
		margin-bottom: min(55/1200 * 100vw, 55px);
	}

	.main-visual__btn a {
		padding: 9px min(25/390 * 100vw, 25px) 9px min(35/390 * 100vw, 35px);
		border-radius: 5px;
		font-size: var(--fontsize16);
	}

	.main-visual__btn--red a {
		padding-left: min(23 / 390 * 100vw, 23px);
	}

	.main-visual__btn--green a::before {
		left: 8px;
		background: url(../../img/common/search-icon.png) no-repeat center;
		background-size: min(15/390 * 100vw, 15px) min(15/390 * 100vw, 15px);
		width: min(15/390 * 100vw, 15px);
		height: min(15/390 * 100vw, 15px);
	}

	.main-visual__btn--red a::before {
		left: 10px;
		background-size: min(15/390 * 100vw, 15px) min(14/390 * 100vw, 14px);
		width: min(15/390 * 100vw, 15px);
		height: min(14/390 * 100vw, 14px);
	}

	.main-visual__illust-item1 {
		top: 12%;
		width: 40%;
		max-width: 160px;
	}

	.main-visual__illust-item2 {
		width: 55%;
		max-width: 275px;
	}

	.main-visual__illust-item3 {
		bottom: 10px;
		left: 0%;
		width: 42%;
		max-width: 200px;
	}

	.main-visual__illust-item4 {
		position: absolute;
		bottom: 15px;
		right: 0;
		width: 50%;
		max-width: 200px;
	}
}

/* ----------------------------------------------
新和について (about)
------------------------------------------------*/
#home .about {
	position: relative;
	overflow-x: hidden;
	z-index: 4;
	margin-top: calc(-1 * min(80/1820 * 100vw, 80px));
}

#home .about__wrap {
	padding: min(150/1820 * 100vw, 150px) 0 min(130/1820 * 100vw, 130px);
	display: flex;
	gap: min(120/1820 * 100vw, 120px);
}

#home .about__wrap::after {
	content: "";
	position: absolute;
	left: 34%;
	bottom: min(80/1820 * 100vw, 80px);
	width: min(309/1820 * 100vw, 309px);
	aspect-ratio: 1/1;
	background: url(../../img/top/geometry.webp) no-repeat center;
	background-size: min(309/1820 * 100vw, 309px) min(309/1820 * 100vw, 309px);
	z-index: -1;
}

#home .about__wrap::before {
	content: "";
	position: absolute;
	left: 58%;
	top: 0px;
	translate: -50%;
	width: min(662/1820 * 100vw, 662px);
	aspect-ratio: 1/1;
	background: url(../../img/top/geometry.webp) no-repeat center;
	background-size: min(662/1820 * 100vw, 662px) min(662/1820 * 100vw, 662px);
	z-index: -1;
}

.about__left {
	flex-shrink: 0;
}

#home .about__description--large {
	font-size: var(--fontsize40);
	margin-bottom: min(50/1820 * 100vw, 50px);
}

#home .about__description--small {
	font-size: var(--fontsize24);
	margin-bottom: min(80/1820 * 100vw, 80px);
}

/* ボタン
-------------------------- */
#home .about__link a {
	position: relative;
	display: inline-block;
	font-size: var(--fontsize24);
	color: var(--base-white);
	padding: min(20/1200 * 100vw, 20px) min(95/1200 * 100vw, 95px) min(20/1200 * 100vw, 20px) min(65/1200 * 100vw, 65px);
	border-radius: 10px;
	background: var(--base-green);
}

#home .about__link a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: min(40/1200 * 100vw, 40px);
	translate: 0 -50%;
	background: url(../../img/common/white-right-arw.png) no-repeat center;
	background-size: 10px 18px;
	width: 10px;
	height: 18px;
}

/* 写真
-------------------------- */
#home .about_image {
	position: relative;
	margin-right: calc(50% - 50vw);
	width: fit-content;
	z-index: 5;
}

#home .about_image::before {
	content: "";
	position: absolute;
	left: calc(-1 * min(20/1820 * 100vw, 20px));
	bottom: calc(-1 * min(20/1820 * 100vw, 20px));
	width: 100%;
	height: 100%;
	background: #bdc3a6;
	border-radius: 15px;
	z-index: 1;
}

#home .about_image img {
	position: relative;
	width: min(1116/1820 * 100vw, 1116px);
	height: auto;
	z-index: 5;
}

@media screen and (max-width: 767px) {
	#home .about__wrap {
		padding: min(50/390 * 100vw, 50px) 0 min(80/390 * 100vw, 80px);
		gap: min(50/390 * 100vw, 50px);
		flex-direction: column;
	}

	#home .about__wrap::before {
		translate: 0;
		width: min(250/390 * 100vw, 250px);
		background-size: min(250/390 * 100vw, 250px) min(250/390 * 100vw, 250px);
		right: -5%;
	}

	#home .about__wrap::after {
		left: initial;
		right: 30%;
		bottom: initial;
		top: 240px;
		translate: 0;
		width: min(150/390 * 100vw, 150px);
		background-size: min(150/390 * 100vw, 150px) min(150/390 * 100vw, 150px);
	}

	#home .about__right {
		margin-right: calc(47% - 50vw);
		text-align: right;
		justify-content: end;
		display: flex;
	}

	#home .aboqaut__description--large {
		font-size: var(--fontsize24);
		margin-bottom: min(20/390 * 100vw, 20px);
	}

	#home .about__description--small {
		font-size: var(--fontsize20);
		margin-bottom: min(20/390 * 100vw, 20px);
	}

	#home .about_image::before {
		left: 18%;
		bottom: calc(-1 * min(10/390 * 100vw, 10px));
		border-radius: 5px;
	}

	#home .about_image img {
		width: 80%;
	}

	#home .about__link a {
		font-size: var(--fontsize20);
		padding: min(15/390 * 100vw, 15px) min(40/390 * 100vw, 40px) min(15/390 * 100vw, 15px) min(30/390 * 100vw, 30px);
		border-radius: 5px;
	}
}

/* ----------------------------------------------
技術力 (technology)
------------------------------------------------*/
#home .technology {
	position: relative;
	background: url(../../img/top/technology-bg.webp) repeat-x center;
	background-size: cover;
	background-color: var(--base-green);
}

#home .technology__wrap {
	padding: min(125/1820 * 100vw, 125px) 0 min(108/1820 * 100vw, 108px);
}

#home .technology__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: min(50/1820 * 100vw, 50px);
}

#home .technology__item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: min(63/1820 * 100vw, 63px) min(10/1820 * 100vw, 10px) min(35/1820 * 100vw, 35px) min(10/1820 * 100vw, 10px);
	background: var(--base-white);
	border-radius: 15px;
}

#home .technology__item img {
	margin-bottom: min(40/1820 * 100vw, 40px);
}

#home .technology__title {
	margin-top: auto;
	margin-bottom: min(20/1820 * 100vw, 20px);
	font-size: var(--fontsize38);
	color: var(--base-green);
}

#home .technology__description {
	font-size: var(--fontsize24);
}

@media screen and (max-width: 767px) {
	#home .technology__wrap {
		padding: min(50/390 * 100vw, 50px) 0 min(60/390 * 100vw, 60px);
	}

	#home .technology__list {
		grid-template-columns: repeat(1, 1fr);
		gap: min(20/390 * 100vw, 20px);
		padding: 0 10px;
	}

	#home .technology__item {
		display: grid;
		padding: min(25/390 * 100vw, 25px) min(20/390 * 100vw, 20px);
		border-radius: 5px;
		grid-template-columns: 1fr 3fr;
		gap: 0 min(20/390 * 100vw, 20px);
		grid-template-rows: auto auto;
		grid-template-areas:
			"image title"
			"image description";
	}

	#home .technology__item img {
		margin-bottom: 0;
		grid-area: image;
		width: 80%;
		max-width: 100px;
		margin-inline: auto;
	}

	#home .technology__title {
		margin-bottom: min(10/390 * 100vw, 10px);
		font-size: var(--fontsize26);
		grid-area: title;
	}

	#home .technology__description {
		font-size: var(--fontsize18);
		grid-area: description;
	}
}

/* ----------------------------------------------
新和の強み (strength)
------------------------------------------------*/
#home .strength {
	position: relative;
	background: url(../../img/top/strength-sprite.webp) repeat-x;
	background-position: bottom center;
}

#home .strength::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	background: url(../../img/top/strength-cloud.webp) no-repeat;
}

#home .strength__wrap {
	padding: min(96/1820 * 100vw, 96px) 0 min(50/1820 * 100vw, 50px);
}

#home .strength__description {
	font-size: var(--fontsize40);
	margin-bottom: min(85/1880 * 100vw, 85px);
}

#home .strength__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: min(45/1820 * 100vw, 45px);
}

#home .strength__item {
	position: relative;
	padding-bottom: min(60/1880 * 100vw, 60px);
}

#home .strength__item img {
	width: 100%;
	height: auto;
}

#home .strength__item-txt {
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: var(--fontsize38);
	line-height: 1;
	white-space: nowrap;
	letter-spacing: -6px;
}

#home .strength__item-number {
	font-family: "CIRCLE20", sans-serif;
	font-size: var(--fontsize100);
	font-weight: 300;
	color: #c31635;
	text-shadow: 4px 4px 0px var(--base-white), -4px -4px 0px var(--base-white), 4px -4px 0px var(--base-white), -4px 4px 0px var(--base-white);
	letter-spacing: -2px;
}

#home .strength__item:not(:last-child) .strength__item-number {
	margin-left: min(20/1820 * 100vw, 20px);
}

#home .strength__item-unit {
	font-family: "CIRCLE20", sans-serif;
	font-size: var(--fontsize50);
	font-weight: 600;
	text-shadow: 4px 4px 0px var(--base-white), -4px -4px 0px var(--base-white), 4px -4px 0px var(--base-white), -4px 4px 0px var(--base-white);
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	#home .strength__wrap {
		padding: min(50/390 * 100vw, 50px) 0;
	}

	#home .strength__list {
		grid-template-columns: repeat(2, 1fr);
		gap: min(10/390 * 100vw, 10px);
	}

	#home .strength__item {
		padding-bottom: min(30/390 * 100vw, 30px);
	}

	#home .strength__item-txt {
		font-size: var(--fontsize16);
		letter-spacing: -2px;
	}

	#home .strength__item-number {
		font-size: var(--fontsize30);
		text-shadow: 2px 2px 0px var(--base-white), -2px -2px 0px var(--base-white), 2px -2px 0px var(--base-white), -2px 2px 0px var(--base-white);
		letter-spacing: 0;
	}

	#home .strength__item-unit {
		font-size: var(--fontsize20);
		text-shadow: 2px 2px 0px var(--base-white), -2px -2px 0px var(--base-white), 2px -2px 0px var(--base-white), -2px 2px 0px var(--base-white);
	}

	#home .strength__description {
		font-size: var(--fontsize20);
		margin-bottom: min(25/390 * 100vw, 25px);
	}
}

/* ----------------------------------------------
中古機械ピックアップ (pick)
------------------------------------------------*/
#home .pick {
	position: relative;
}

#home .pick__wrap {
	padding: min(100/1820 * 100vw, 100px) 0 min(120/1820 * 100vw, 120px);
}

#home .pick__content {
	display: flex;
	flex-direction: column;
	gap: min(48/1820 * 100vw, 48px);
}

#home .pick__box {
	position: relative;
	padding: min(104/1820 * 100vw, 104px) 0px 75px min(335/1820 * 100vw, 335px);
	border-radius: 15px;
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
	background: red;
	margin-right: calc(50% - 50vw);
	min-height: 495px;
}

#home .pick__box::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	background: url(../../img/top/pick-decoration.webp) no-repeat;
	background-size: min(846/1820 * 100vw, 846px) min(440/1820 * 100vw, 440px);
	width: min(846/1820 * 100vw, 846px);
	height: min(440/1820 * 100vw, 440px);
	z-index: 1;
}

#home .pick__box--deep-green {
	background: var(--base-deep-green);
	box-shadow: min(10/1820 * 100vw, 10px) calc(-1 * min(10/1820 * 100vw, 10px)) 0 0 rgb(114, 129, 60, 0.3);
}

#home .pick__box--deep-green::before {
	content: "";
	position: absolute;
	left: -50px;
	bottom: 20%;
	background: url(../../img/top/pick-cloud.webp) no-repeat;
	background-size: min(248/1820 * 100vw, 248px) min(96/1820 * 100vw, 96px);
	width: min(248/1820 * 100vw, 248px);
	height: min(96/1820 * 100vw, 96px);
}

#home .pick__box--green {
	background: var(--base-green);
	box-shadow: min(10/1820 * 100vw, 10px) calc(-1 * min(10/1820 * 100vw, 10px)) 0 0 rgb(80, 100, 72, 0.3);
}

#home .pick__box--green::before {
	content: "";
	position: absolute;
	left: 60px;
	bottom: 30%;
	background: url(../../img/top/pick-cloud.webp) no-repeat;
	background-size: min(248/1820 * 100vw, 248px) min(96/1820 * 100vw, 96px);
	width: min(248/1820 * 100vw, 248px);
	height: min(96/1820 * 100vw, 96px);
}

#home .pick__box--blue {
	background: var(--base-blue);
	box-shadow: min(10/1820 * 100vw, 10px) calc(-1 * min(10/1820 * 100vw, 10px)) 0 0 rgb(62, 75, 106, 0.3);
}

#home .pick__box--blue::before {
	content: "";
	position: absolute;
	left: -40px;
	top: 5%;
	background: url(../../img/top/pick-cloud.webp) no-repeat;
	background-size: min(248/1820 * 100vw, 248px) min(96/1820 * 100vw, 96px);
	width: min(248/1820 * 100vw, 248px);
	height: min(96/1820 * 100vw, 96px);
}

.coming-soon {
	color: #ffffff;
}

@media screen and (max-width: 767px) {
	.coming-soon {
		color: #ffffff;
	}
}

/* タイトル
-------------------------- */
#home .pick__title {
	position: absolute;
	top: min(104/1820 * 100vw, 104px);
	left: min(90/1820 * 100vw, 90px);
	display: flex;
	gap: min(20/1820 * 100vw, 20px);
}

#home .pick__title h3 {
	font-size: var(--fontsize60);
	font-weight: 400;
	writing-mode: vertical-rl;
	color: var(--base-white);
}

/* テキスト
-------------------------- */
#home .pick__description {
	font-size: min(calc(25 / 1600 * 100vw), 25px);
	writing-mode: vertical-rl;
	color: var(--base-white);
}

/* ボタン
-------------------------- */
#home .pick__link {
	position: absolute;
	bottom: min(32/1820 * 100vw, 32px);
	left: 5%;
}

#home .pick__link a {
	position: relative;
	display: inline-block;
	padding: 5px 50px 5px 30px;
	border: 1px solid var(--base-white);
	border-radius: 50px;
	font-size: var(--fontsize22);
	color: var(--base-white);
}

#home .pick__link a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	translate: 0 -50%;
	background: url(../../img/common/white-right-arw.png) no-repeat center;
	background-size: 9px 16px;
	width: 9px;
	height: 16px;
}

/* リスト一覧
-------------------------- */
#home .pick__scroll {
	overflow-x: auto;
}

#home .pick__list {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: min(40/1820 * 100vw, 40px);
	width: 95%;
	min-width: 900px;
	z-index: 5;
	margin-right: 2%;
}

#home .pick__item a {
	display: flex;
	flex-direction: column;
	border-radius: 10px;
	overflow: hidden;
	height: 100%;
}

#home .pick__item a:hover {
	opacity: 1;
}

#home .pick__item a:hover p {
	opacity: 0.8;
}

/* 画像
-------------------------- */
#home .pick__item-image {
	width: 100%;
	/* aspect-ratio: 34/23; */
	background: #c7c7c7;
}

#home .pick__item-image img {
	/* width: 100%;
	height: auto;
	object-fit: cover; */

	width: 100%;
	object-fit: cover;
	aspect-ratio: 4 / 2.5;
}

#home .pick__item-txt {
	/* display: flex;
	flex-direction: column; */
	background: var(--base-white);
	padding: min(30/1820 * 100vw, 30px) min(25/1820 * 100vw, 25px) min(25/1820 * 100vw, 25px);
	height: 100%;
}

.pick__item,
.pick__item-txt {
	min-width: 0;
}

#home .pick__item-title {
	display: block; /* 念のため */
	width: 100%; /* ★これが決定打 */
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-bottom: 10px;
	font-size: var(--fontsize28);
}

#home .pick__item-price {
	font-size: var(--fontsize22);
}

#home .pick__item-price span {
	font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
	#home .pick__wrap {
		padding: min(30/390 * 100vw, 30px) 0;
	}

	#home .pick__box {
		padding: min(30/390 * 100vw, 30px) 0px min(75/390 * 100vw, 75px) min(20/390 * 100vw, 200px);
		border-radius: 10px;
		min-height: initial;
	}

	#home .pick__title {
		position: relative;
		top: initial;
		left: initial;
		gap: min(5/390 * 100vw, 5px);
		flex-direction: column;
		margin-bottom: min(10/390 * 100vw, 10px);
	}

	#home .pick__title h3 {
		font-size: var(--fontsize24);
		writing-mode: initial;
	}

	#home .pick__item-txt {
		padding: min(10/390 * 100vw, 10px);
	}

	#home .pick__item-title {
		font-size: var(--fontsize20);
	}

	#home .pick__description {
		font-size: var(--fontsize16);
		writing-mode: initial;
	}

	#home .pick__item-price {
		font-size: var(--fontsize16);
	}

	#home .pick__link {
		bottom: min(16/390 * 100vw, 16px);
	}

	#home .pick__link a {
		padding: 3px 40px 3px 20px;
		font-size: var(--fontsize16);
	}

	#home .pick__link a::after {
		background-size: 6px 13px;
		width: 6px;
		height: 13px;
	}
}

/* ----------------------------------------------
ブランド (bland)
------------------------------------------------*/
#home .bland {
	position: relative;
	background: url(../../img/top/bland-bg.webp) repeat center;
	background-size: 100% auto;
	background-color: #3b3b3b;
}

#home .bland__wrap {
	padding: 55px 0 50px;
}

#home .bland__content {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#home .bland__wrap::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 45%;
	translate: -50% -50%;
	background: url(../../img/top/bland-junkle.webp) no-repeat center;
	background-size: min(400/1200 * 100vw, 400px) min(455/1200 * 100vw, 455px);
	width: min(400/1200 * 100vw, 400px);
	height: min(455/1200 * 100vw, 455px);
}

#home .bland__description {
	font-size: var(--fontsize24);
	color: var(--base-white);
	margin-bottom: min(60/1200 * 100vw, 60px);
}

#home .bland__link a {
	position: relative;
	display: inline-block;
	font-size: var(--fontsize24);
	color: var(--base-white);
	padding: min(25/1200 * 100vw, 25px) min(70/1200 * 100vw, 70px) min(25/1200 * 100vw, 25px) min(55/1200 * 100vw, 55px);
	border: 1px solid var(--base-white);
	border-radius: 10px;
}

#home .bland__link a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: min(38/1200 * 100vw, 38px);
	translate: 0 -50%;
	background: url(../../img/common/white-right-arw.png) no-repeat center;
	background-size: min(10/1200 * 100vw, 12px) min(18/1200 * 100vw, 18px);
	width: 10px;
	height: 18px;
}

#home .bland__right {
	display: grid;
	grid-template-columns: 1fr 1.5fr; /* 横幅比 */
	grid-template-rows: 2fr 1fr; /* 縦幅比 */
	gap: 15px;
	width: 800px;
	z-index: 5;
}

#home .bland__right img {
	width: 100%;
	height: auto;
}

#home .bland__img1 {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
}

#home .bland__img2 {
	grid-column: 2 / 3;
	grid-row: 1 / 3; /* 2行分 */
}

#home .bland__img3 {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
}

@media screen and (max-width: 767px) {
	#home .bland__wrap {
		padding: min(30/390 * 100vw, 30px) 0;
	}

	#home .bland__wrap::after {
		top: 29%;
		left: 50%;
		background-size: min(200 / 390 * 100vw, 200px) min(227 / 390 * 100vw, 227px);
		width: min(200 / 390 * 100vw, 200px);
		height: min(227 / 390 * 100vw, 227px);
	}

	#home .bland__description {
		font-size: var(--fontsize18);
		margin-bottom: min(20/390 * 100vw, 20px);
	}

	#home .bland__content {
		align-items: initial;
		flex-direction: column;
		gap: min(20/390 * 100vw, 20px);
	}

	#home .bland__link a {
		font-size: var(--fontsize18);
		padding: min(15/390 * 100vw, 15px) min(50/390 * 100vw, 50px) min(15/390 * 100vw, 15px) min(30/390 * 100vw, 30px);
		border-radius: 5px;
	}

	#home .bland__right {
		width: initial;
	}
}

/* ----------------------------------------------
お知らせ (info)
------------------------------------------------*/
#home .info {
	position: relative;
	padding: min(95/1820 * 100vw, 95px) 0 min(115/1820 * 100vw, 115px);
}

#home .info::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	background: url(../../img/top/info-decoration.webp) no-repeat center;
	background-size: min(809/1820 * 100vw, 809px) min(300/1820 * 100vw, 300px);
	width: min(809/1820 * 100vw, 809px);
	height: min(300/1820 * 100vw, 300px);
	z-index: 0;
}

#home .info__wrap {
	position: relative;
}

#home .info__list a {
	position: relative;
	padding: min(40/1200 * 100vw, 40px) 20px min(40/1200 * 100vw, 40px) 0;
	border-bottom: 1px solid #c1c1bf;
	display: flex;
	align-items: center;
	gap: min(35/1820 * 100vw, 35px);
}

#home .info__list a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	translate: 0 -50%;
	background: url(../../img/common/black-right-arw.png) no-repeat center;
	background-size: 10px 18px;
	width: 10px;
	height: 18px;
}

/* 日付
-------------------------- */
#home .info__list a time {
	font-size: var(--fontsize24);
	color: var(--txt-black);
	flex-shrink: 0;
}

/* カテゴリー
-------------------------- */
#home .info__list-category span {
	font-size: var(--fontsize24);
	color: var(--base-white);
	padding: min(10/1200 * 100vw, 10px) min(25/1200 * 100vw, 25px);
	border-radius: 50px;
	background: var(--base-red);
	flex-shrink: 0;
}

/* タイトル
-------------------------- */
#home .info__list-title {
	font-size: var(--fontsize24);
	color: var(--txt-black);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}

/*ボタン
-------------------------- */
#home .info__btn {
	position: absolute;
	top: min(55/1200 * 100vw, 55px);
	right: 0;
	z-index: 5;
}

#home .info__btn a {
	position: relative;
	display: inline-block;
	font-size: var(--fontsize22);
	color: var(--base-green);
	border: 1px solid var(--base-green);
	border-radius: 50px;
	padding: 10px 50px 10px 37px;
}

#home .info__btn a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 17px;
	translate: 0 -50%;
	background: url(../../img/common/green-right-arw.png) no-repeat center;
	background-size: min(9/1200 * 100vw, 9px) min(16/1200 * 100vw, 16px);
	width: min(9/1200 * 100vw, 9px);
	height: min(16/1200 * 100vw, 16px);
}

@media screen and (max-width: 767px) {
	#home .info__content ul {
		margin-bottom: min(20/390 * 100vw, 20px);
	}

	#home .info__list a {
		padding: min(20/390 * 100vw, 20px) 20px min(20/390 * 100vw, 20px) 0;
		display: grid;
		align-items: center;
		gap: min(10/390 * 100vw, 10px);
		grid-template-areas:
			"date category"
			"title title";
		grid-template-columns: auto 1fr;
		grid-template-rows: auto auto;
	}

	#home .info__list a::after {
		background-size: 5px 9px;
		width: 5px;
		height: 9px;
	}

	#home .info__list a time {
		font-size: var(--fontsize16);
		grid-area: date;
	}

	#home .info__list-category {
		grid-area: category;
		display: inline-flex;
		align-items: center;
	}

	#home .info__list-category span {
		font-size: var(--fontsize12);
		padding: min(10/1200 * 100vw, 10px) min(25/1200 * 100vw, 25px);
		display: inline-flex;
		align-items: center;
	}

	#home .info__list-title {
		font-size: var(--fontsize14);
		grid-area: title;
	}

	#home .info__btn {
		position: initial;
		top: initial;
		right: initial;
	}

	#home .info__btn a {
		font-size: var(--fontsize16);
		padding: 5px 40px 5px 27px;
	}
}

/* ----------------------------------------------
お問い合わせ (contact)
------------------------------------------------*/
#home .contact {
	position: relative;
	background: url(../../img/top/contact-bg.webp) no-repeat center;
	background-size: cover;
}

#home .contact__wrap {
	padding: min(110/1820 * 100vw) 0 min(100/1820 * 100vw, 100px);
}

#home .contact__wrap .heading {
	align-items: center;
}

#home .contact__description--large {
	font-size: var(--fontsize40);
	color: var(--base-white);
	margin-bottom: min(10/1820 * 100vw, 10px);
}

#home .contact__description {
	font-size: var(--fontsize24);
	color: var(--base-white);
	margin-bottom: min(100/1820 * 100vw, 100px);
}

/*ボタン
-------------------------- */
#home .contact__btn a {
	position: relative;
	font-size: var(--fontsize24);
	color: var(--base-white);
	padding: min(25/1200 * 100vw, 25px) min(75/1200 * 100vw, 75px) min(25/1200 * 100vw, 25px) min(105/1200 * 100vw, 105px);
	border: 1px solid var(--base-white);
	border-radius: 15px;
	display: inline-block;
}

#home .contact__btn a:hover #home .contact__btn a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: min(30/1200 * 100vw, 30px);
	translate: 0 -50%;
	background: url(../../img/common/mail-icon.png) no-repeat center;
	background-size: min(33/1200 * 100vw, 33px) min(29/1200 * 100vw, 29px);
	width: min(33/1200 * 100vw, 33px);
	height: min(29/1200 * 100vw, 29px);
}

@media screen and (max-width: 767px) {
	#home .contact__description--large {
		font-size: var(--fontsize18);
		color: var(--base-white);
		margin-bottom: min(10/1820 * 100vw, 10px);
	}

	#home .contact__description {
		font-size: var(--fontsize14);
		margin-bottom: min(30/390 * 100vw, 30px);
	}

	#home .contact__btn a {
		font-size: var(--fontsize16);
		padding: min(5/390 * 100vw, 5px) min(25/390 * 100vw, 25px) min(5/390 * 100vw, 5px) min(35/390 * 100vw, 35px);
		border-radius: 5px;
	}

	#home .contact__btn a::before {
		left: min(10/390 * 100vw, 10px);
		background-size: min(16/390 * 100vw, 16px) min(14/390 * 100vw, 14px);
		width: min(16/390 * 100vw, 16px);
		height: min(14/390 * 100vw, 14px);
	}
}
