@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#main .mainVisual .content {
	padding-top: min(0.8vw,1rem);
}
#main .mainVisual .textBox {
	padding-top: min(15.4vw,19.7rem);
	margin-left: max(-1.3vw,-1.7rem);
}
#main .mainVisual .photoBox .txtSpan {
	top: auto;
	bottom: min(1.72vw,2.2rem);
	right: -0.5rem;
}
#main .compBox{
	padding-bottom: min(3.9vw,5rem);
}
#main .sec02 {
	padding-bottom: min(7.1vw,9rem);
	background: url(../img/special6/bg01.webp) no-repeat center bottom;
	background-size: cover;
}
#main .sec02 .headLine02 {
	position: relative;
	top: max(-3.3vw,-3rem);
	margin-bottom: min(1.56vw,2rem);
}
#main .sec02 .inner01 {
	margin-bottom: min(4.1vw,5.2rem);
}
#main .sec02 .inner01 p {
	font-size: 2.7rem;
	letter-spacing: 0.2em;
	line-height: 2.33;
}
.headLine03 small {
	display: block;
	margin-top: 0.5rem;
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1.36;
	letter-spacing: 0.12em;
}
#main .inner02 {
	margin: -0.3rem min(3.125vw,4rem) min(7.8vw,10rem);
}
#main .inner02:last-child {
	margin-bottom: 0;
}
#main .subInner .photoBox {
	width: min(48.4vw,62rem);
	order: 2;
	margin: 1.2rem max(-8.6vw,-11rem) 0 min(3.9vw,5rem);
}
#main .subInner .photoBox .txtSpan {
	display: block;
	font-size: 1.4rem;
	letter-spacing: 0.025em;
	margin-top: 1.2rem;
}
#main .subInner .textBox {
	flex: 1;
}
#main .subInner .textBox p {
	line-height: 2.22;
}
#main .inner03 .subInner .photoBox {
	order: -1;
	margin-left: max(-8.6vw,-11rem);
	margin-right: min(3.9vw,5rem);
}
@media all and (max-width: 896px) {
	#main .mainVisual .content {
		padding-top: 1rem;
	}
	#main .mainVisual .iconBox {
		bottom: -5.5rem;
	}
	#main .mainVisual .photoBox .txtSpan {
		bottom: min(-43.5vw,-16.3rem);
		right: 0.2rem;
	}
	#main .mainVisual .textBox {
		padding-top: 9.2rem;
		margin-left: 2.5rem;
		margin-right: -0.4rem;
	}
	#main .mainVisual {
		margin-bottom: 6.6rem;
	}
	#main .compBox p {
		margin-bottom: 3.7rem;
	}
	#main .compBox p:last-child {
		margin-bottom: 0;
	}
	#main .compBox {
		padding-bottom: 7.4rem;
	}
	#main .sec02 {
		padding-bottom: 2.5rem;
		background-image: url(../img/special6/bg01_sp.webp);
	}
	#main .sec02 .content {
		padding: 0 2rem;
	}
	#main .sec02 .headLine02 {
		margin-bottom: -3.3rem;
		top: -5rem;
	}
	#main .sec02 .inner01 p {
		font-size: 1.5rem;
		letter-spacing: 0.14em;
		line-height: 2.1;
	}
	#main .inner02 {
		margin: 0 0 2.5rem;
	}
	.headLine03 {
		font-size: 2.4rem;
		letter-spacing: 0;
	}
	.headLine03 small {
		margin-top: 0;
		font-size: 1.6rem;
		letter-spacing: 0;
		line-height: 1.44;
	}
	.headLine03 small .pad:not(.sp) {
		display: none;
	}
	#main .sec02 .inner01 {
		margin-bottom: 2rem;
	}
	#main .subInner {
		flex-direction: column;
	}
	#main .subInner .photoBox {
		width: auto;
		margin: 0;
	}
	#main .subInner .textBox {
		padding-bottom: 1.5rem;
	}
	#main .subInner .textBox p {
		letter-spacing: 0;
		line-height: 2;
	}
	#main .subInner .photoBox .txtSpan {
		font-size: 1rem;
		margin-top: 0.8rem;
	}
}

@media all and (min-width: 897px) {
	#main .compBox p {
		max-width: min(66.4vw,85rem);
		width: 100%;
		margin-bottom: min(5.5vw,7rem);
	}
	#main .compBox p:last-child {
		margin-bottom: 0;
	}
	#main .mainVisual .iconBox {
		bottom: .8rem;
	}
	#main .mainVisual {
		margin-bottom: min(3.5vw,4.5rem);
	}
	#main .sec02 .content {
		max-width: min(92.3vw,118rem);
	}
}

@media all and (min-width: 897px) and (max-width: 1279px) {
	#main .mainVisual {
		padding-top: 0;
		margin-top: -0.5rem;
	}
	#main .mainVisual .content {
		padding-top: 0;
	}
	#main .mainVisual .textBox {
		padding-right: 8rem;
	}
	#main .compBox p {
		max-width: inherit;
	}
	#main .compBox {
		margin-bottom: min(10vw,8.7rem);
	}
	#main .sec02 .content {
		width: 89%;
	}
	#main .sec02 .inner01 {
		margin-bottom: min(6.1vw,5.2rem);
	}
	#main .inner02 {
		margin-inline: 0.8rem;
	}
	.headLine03 {
		margin-bottom: min(1.4vw,1.3rem);
	}
	.headLine03 small {
		letter-spacing: 0;
	}
	#main .sec02 {
		padding-bottom: min(9.1vw,9rem);
		background-image: url(../img/special6/pad_bg.webp);
	}
}