@charset "UTF-8";
@media screen and (min-width: 768px),print {

body#catalog {
	background: #fff;
}

.p-catalog {
	background: url(../images/catalog/fv.jpg) no-repeat top center/cover;
	height: 823px;
	padding: 150px 0 300px;
	position: relative;
	top: -94px;
	max-width: 1920px;
	width: 100%;
	margin-inline: auto;
}

.l-inner.catalog {
	max-width: 100%;
	width: 100%;
}

.p-catalog__ttl {
	margin-bottom: 55px;
	text-align: center;
}

.p-catalog__ttl img {
	height: auto;
	max-width: 660px;
	width: 100%;
}

.p-catalog__txt {
	color: #fff;
	text-align: center;
}

.p-catalog__img {
	content: "";
	position: absolute;
	right: calc(50% + 319px);
	top: 157px;
}

.p-catalog__img img {
	height: auto;
	width: 169px;
}

.p-catalog__fv2 {
	margin: -448px 0 164px;
	position: relative;
	z-index: 2;
}

.p-catalog__fv2::before {
	background: url(../images/catalog/fv_item.png) no-repeat center center/contain;
	content: "";
	height: 100%;
	left: calc(50% + 306px);
	position: absolute;
	top: -284px;
	width: 330px;
}

.l-inner.catalog-fv2 {
	
}

.p-catalog__fv2-items {
	max-width: 1100px;
	width: 95%;
	margin-inline: auto;
	background: #fff;
	border: 14px solid #100100;	
	padding: 24px 0 43px;
}
.p-catalog__fv2-items::after {
	position: absolute;
	content: "";
	background: url(../images/catalog/squire.png) no-repeat center center/contain;
	max-width: 324px;
	width: 95%;
	height: 72px;
	bottom: -57px;
	left: 50%;
	transform: translateX(-50%);
}

.p-catalog__fv2-item {
	margin-inline: auto;
	max-width: 976px;
	
	width: 95%;
	border-bottom: 2px dashed #a1a1a1;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.72px;
	line-height: 3.4166666667;
	padding-left: 75px;
	position: relative;
	text-align: start;
}

.p-catalog__fv2-item:before {
	aspect-ratio: 1;
	background: url(../images/movie/check.svg) no-repeat center center/contain;
	content: "";
	left: 8px;
	position: absolute;
	top: 10px;
	width: 47px;
}

.p-catalog__fv2-item.last {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.p-catalog__fv2-item span {
	color: #E7322F;
}

.p-catalog__up {
	margin-bottom: 135px;
}

.p-catalog__up-txt {
	margin-bottom: 33px;
	text-align: center;
}

.p-catalog__up-txt2 {
	margin-bottom: -80px;
	position: relative;
	text-align: center;
	z-index: 2;
}

.p-catalog__up-bg {
	background: #000;
	height: 380px;
	margin-bottom: 100px;
	padding-top: 116px;
	position: relative;
	max-width: 1920px;
	width: 100%;
	margin-inline: auto;
	z-index: 1;
}

.p-catalog__up-txt3 {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 1.44px;
	line-height: 1.8888888889;
	margin-bottom: 32px;
	position: relative;
	text-align: center;
	z-index: 2;
}

.p-catalog__up-items {
	display: grid;
	gap: 0 19px;
	grid-template-columns: repeat(4, 1fr);
	margin-inline: auto;
	max-width: 1200px;
	position: relative;
	width: 95%;
	z-index: 2;
}

.p-catalog__up-item img {
	width: 100%;
	height: auto;
}

.p-catalog__up-item-txt {
	margin-bottom: 75px;
	text-align: center;
}

.p-catalog__items-step {
	align-items: center;
	display: grid;
	grid-template-columns: 1fr minmax(calc( 63 / 1200  * 100% ),63px) 1fr minmax(calc( 63 / 1200  * 100% ),63px) 1fr;
	margin-inline: auto;
	max-width: 1200px;
	width: 95%;
}

.p-catalog__item-step {
	display: grid;
	grid-template-columns: repeat(1,1fr);
	gap: 8px 0;
	place-items: center;
}

.p-catalog__item-step.num {
}

.p-catalog__item-step .wrap {
	border: 1px solid #707070;
	max-width: 355px;
	width: 100%;
	height: 249px;
	position: relative;
}

.p-catalog__item-step .wrap > div {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 55px;
	width: 100%;
}

.p-catalog__item-step.step03 .wrap > div {
	top: 36px;
}

.p-catalog__item-step .wrap .icon {
	text-align: center;
	margin-bottom: 44px;
}

.p-catalog__item-step .wrap .txt {
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.625;
	letter-spacing: 0.1em;
}

.p-catalog__item-step.step02 .icon {
margin: -7px 0 23px 0;
}

.p-catalog__item-step.step03 .icon {
	margin-bottom: 25px;
}

.p-catalog__item-step.arrow {
	position: relative;
	top: 24px;
}

.p-catalog__item-step.arrow img {
	height: 105px;
	width: 23px;
}

.p-catalog__contact {
	background: #E7322F;
	padding: 40px 0 32px;
	max-width: 1920px;
	width: 100%;
	margin-inline: auto;
}

.l-inner.catalog-contact {
	width: 100%;
}

.p-catalog__contact-ttl {
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 3.74px;
	line-height: 1.6363636364;
	margin-bottom: 10px;
	text-align: center;
}

.p-catalog__contact-tel {
	margin-bottom: 10px;
	text-align: center;
}

.p-catalog__contact-time {
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.84px;
	line-height: 2.1428571429;
	text-align: center;
}

}

@media screen and (min-width:768px) and ( max-width:1100px) {
.p-catalog {
	background: url(../images/catalog/fv.jpg) no-repeat top center / cover;
	height: 823px;
	padding: 150px 0 300px;
	position: relative;
	top: -98px;
	width: 100%
}
.p-catalog__img img {
	width: 100px;
}
.p-catalog__img {
	right: calc(51% + 314px);
	top: 286px;
}
.p-catalog__fv2::before {
	left: calc(50% + 273px);
	top: -240px;
	width: 194px;
}
.p-catalog__fv2-item {
	font-size: 18px;
}
.p-catalog__fv2-item:before {
	width: 32px;
}
.p-catalog__fv2-item {
	padding-left: 56px;
}
.l-inner.catalog-fv2 {
	height: 500px;
	max-height: 100%;
}
.p-catalog__fv2-items {
	display: grid;
	padding: 14px 0 14px;
}
.p-catalog__up-txt img {
	width: 95%;
}
.p-catalog__up-txt2 img {
	width: 95%;
}
.p-catalog__up-txt2 {
	margin-bottom: -40px;
}
.p-catalog__up-bg {
	padding-top: 64px;
	height: 32vw;
}
.p-catalog__fv2-items::after {
	bottom: 56px;
}
.p-catalog__fv2 {
	margin: -448px 0 80px;
}
.p-catalog__item-step.step01 .wrap > div .icon img {
	width: 90%;
	height: auto;
}
.p-catalog__item-step .wrap > div {
	top: 32px;
}
.p-catalog__item-step.step03 .wrap > div {
	top: 22px;
}
}


@media screen and (min-width:768px) and (max-width:1280px) {
.p-catalog__item-step.step02 .icon img {
width: 80%; margin: 0 auto;
}
}



@media screen and (max-width: 767px) {
	body#catalog {
		background: #fff;
	}
	
	.p-catalog {
		background: url(../images/catalog/fv_sp.jpg) no-repeat top center/cover;
		height: 191.792vw;
		padding: 11.111vw 0 72.464vw;
		position: relative;
		top: 0px;
		width: 100%;
	}
	
	.l-inner.catalog {
		width: 100%;
	}
	
	.p-catalog__ttl {
		margin-bottom: 6.8vw;
		text-align: center;
	}
	
	.p-catalog__ttl img {
		height: auto;
		max-width: 84.058vw;
		width: 100%;
	}
	
	.p-catalog__txt {
		text-align: center;
	}
	
	.p-catalog__img {
		content: "";
		position: absolute;
		right: calc(50% - -6.4vw);
		top: 53.5vw;
	}
	
	.p-catalog__img img {
		width: 23.329vw;
	}
	
	.p-catalog__fv2 {
		margin: -111vw 0 10.87vw;
		position: relative;
		z-index: 2;
	}
	
	.p-catalog__fv2::before {
		background: url(../images/catalog/fv_item_sp.png) no-repeat center center/contain;
		content: "";
		height: 37vw;
		left: calc(50% + 3vw);
		position: absolute;
		top: -28vw;
		width: 41vw;
	}
	
	.l-inner.catalog-fv2 {
		background: url(../images/catalog/fv_bg2_sp.png) no-repeat top center/contain;
		height: 141.304vw;
		margin-inline: auto;
		max-width: 89.372vw;
		width: 95%;
	}
	
	.p-catalog__fv2-items {
		margin-inline: auto;
		max-width: 73.671vw;
		padding: 8.2vw 0vw 7.2vw;
		width: 95%;
	}
	
	.p-catalog__fv2-item {
		border-bottom: 2px dashed #a1a1a1;
		font-size: 4.348vw;
		font-weight: 700;
		letter-spacing: 0.174vw;
		line-height: 1.7777777778;
		padding: 2.4vw 0 2.3vw 7.5vw;
		position: relative;
		text-align: start;
	}
	
	.p-catalog__fv2-item:first-child {
		padding: 0 0 2.3vw 7.5vw;
	}
	
	.p-catalog__fv2-item:before {
		aspect-ratio: 1;
		background: url(../images/movie/check.svg) no-repeat center center/contain;
		content: "";
		left: -0.4vw;
		position: absolute;
		top: 2.7vw;
		width: 5.5vw;
	}
	
	.p-catalog__fv2-item span {
		color: #E7322F;
	}
	
	.p-catalog__up {
		margin-bottom: 23.6vw;
	}
	
	.l-inner.catalog-up {
		width: 100%;
	}
	
	.p-catalog__up-txt {
		margin-bottom: 5.9vw;
		text-align: center;
	}
	
	.p-catalog__up-txt2 {
		margin-bottom: -21vw;
		position: relative;
		text-align: center;
		z-index: 2;
	}
	
	.p-catalog__up-bg {
		background: #000;
		height: 103.5vw;
		margin-bottom: 15.1vw;
		padding-top: 25.1vw;
		position: relative;
		width: 100%;
		z-index: 1;
	}
	
	.p-catalog__up-txt3 {
		color: #fff;
		font-size: 3.382vw;
		font-weight: 700;
		letter-spacing: 0.406vw;
		line-height: 1.8571428571;
		margin-bottom: 5.314vw;
		position: relative;
		text-align: center;
		z-index: 2;
		max-width: 89.3vw;
		width: 95%;
		margin-inline: auto;
	}
	
	.p-catalog__up-items {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		gap: 2.899vw 2.174vw;
		justify-content: center;
		margin-inline: auto;
		max-width: 89.372vw;
		position: relative;
		width: 95%;
		z-index: 2;
	}
	
	.p-catalog__up-item {
		width: 46%;
	}
	
	.p-catalog__up-item img {
		height: auto;
		width: 100%;
	}

	.p-catalog__up-item-txt {
		margin-bottom: 32px;
		text-align: center;
	}
	
	.p-catalog__items-step {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		margin-inline: auto;
		max-width: 82.126vw;
		width: 95%;
	}

	.p-catalog__item-step {
		display: grid;
		grid-template-columns: repeat(1,1fr);
		gap: 1.9vw 0;
		place-items: center;
	}
	
	.p-catalog__item-step.num {
	}
	
	.p-catalog__item-step .wrap {
		border: 0.24vw solid #707070;
		max-width: 85.7vw;
		width: 100%;
		height: 60.1vw;
		position: relative;
	}
	
	.p-catalog__item-step .wrap > div {
		content: "";
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		top: 10.2vw;
		width: 100%;
	}
	
	.p-catalog__item-step.step03 .wrap > div {
		top: 5vw;
	}
	
	.p-catalog__item-step .wrap .icon {
		text-align: center;
		margin-bottom: 10.6vw;
	}
	
	.p-catalog__item-step .wrap .txt {
		text-align: center;
		font-size: 3.865vw;
		font-weight: 700;
		line-height: 1.625;
		letter-spacing: 0.1em;
	}
	
	.p-catalog__item-step.step02 .icon {
        margin-bottom: 8.4vw;
        padding: 0 12vw 0 12vw;
	}
	
	.p-catalog__item-step.step03 .icon {
		margin-bottom: 6vw;
	}
	
	.p-catalog__item-step.arrow {
		position: relative;
		top: -1.6vw;
	}

	.p-catalog__item-step.arrow img {
		height: 25.362vw;
		transform: rotateZ(90deg);
		width: 5.556vw;
	}
	
	.p-catalog__contact {
		background: #E7322F;
		padding: 9.662vw 0 9.903vw;
	}
	
	.l-inner.catalog-contact {
		width: 100%;
	}
	
	.p-catalog__contact-ttl {
		color: #fff;
		font-size: 4.831vw;
		font-weight: 700;
		letter-spacing: 0.58vw;
		line-height: 1.6;
		margin-bottom: 5.556vw;
		text-align: center;
	}
	
	.p-catalog__contact-tel {
		margin-bottom: 1.932vw;
		text-align: center;
	}
	
	.p-catalog__contact-tel img {
		max-width: 89.372vw;
		width: 95%;
	}
	
	.p-catalog__contact-time {
		color: #fff;
		font-size: 3.382vw;
		font-weight: 400;
		letter-spacing: 0.203vw;
		line-height: 2.1428571429;
		text-align: center;
	}
	
	.p-catalog__fv2-item:first-child:before {
		top: 0.3vw;
		left: -1vw;
	}
	.p-catalog__fv2-item.last {
		position: relative;
	}
	.p-catalog__fv2-item.last::after {
		bottom: -12vw;
		content: "など";
		font-size: 4.831vw;
		font-weight: 700;
		letter-spacing: 0.048vw;
		line-height: 1.6;
		position: absolute;
		right: 0;
	}
	
	}