@media screen and (min-width: 768px) {
	#header .group h2 small {
		font-size: 16px;
	}
}

#sec1 {
	position: relative;
	padding: 20vw 0 15vw;
}

#sec1::before {
	content: "";
	background: url(../img/index/sec1_img.png) no-repeat top center;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	position: absolute;
	top: -50px;
	left: 0;
	height: 1149px;
	width: 100vw;
	z-index: 1;
}

#sec1::after {
	content: "";
	background: url(../img/index/sec2_bg.jpg) no-repeat center;
	background-size: 100% 100%;
	height: 3049px;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
}

#sec1 h2 {
	text-align: center;
	margin-bottom: 10vw;
	position: relative;
	z-index: 2;
	line-height: 2;
}

#sec1 .box {
	position: relative;
	z-index: 2;
}

#sec1 .box .text {
	margin-bottom: 10vw;
}

#sec1 .box .photo {}

#sec1 .deco-1 {
	position: absolute;
	top: -12vw;
	left: 0;
	width: 63vw;
	z-index: 1;
}

#sec1 .deco-2 {
	position: absolute;
	top: 88vw;
	right: 0;
	width: 66vw;
	z-index: 1;
}

@media only screen and (min-width: 768px) {
	#sec1 {
		padding: 155px 0 148px;
	}

	#sec1::before {
		top: 0;
		left: auto;
		right: 0;
		height: 1149px;
		width: 1254px;
	}

	#sec1::after {
		background: url(../img/index/sec2_bg.jpg) no-repeat center;
		background-size: cover;
		height: 3049px;
		top: 0;
		right: 0;
		left: 0;
	}

	#sec1 h2 {
		margin-bottom: 100px;
		line-height: 56px;
		letter-spacing: 0.15em;
	}

	#sec1 .box {
		margin-bottom: 0;
	}

	#sec1 .box .text {
		width: 435px;
		margin-bottom: 0;
		padding-right: 47px;
		margin-top: -10px;
		letter-spacing: 0.1em;
	}

	#sec1 .box .photo {
		width: 500px;
		margin-left: -30px;
	}

	#sec1 .deco-1 {
		top: -157px;
		left: -250px;
		width: 582px;
	}

	#sec1 .deco-2 {
		top: 434px;
		right: -250px;
		width: 500px;
	}
}

#sec2 {
	position: relative;
	z-index: 2;
	padding-bottom: 15vw;
	padding-top: 10vw;
}

#sec2 .set1 h2 {
	text-align: center;
	margin-bottom: 10vw;
	letter-spacing: 0.15em;
}

#sec2 .set1 .note {
	text-align: center;
	font-size: 14px;
	margin-bottom: 10vw;
}

#sec2 .set1 .box-1 {
	position: relative;
	margin-bottom: 15vw;
}

#sec2 .set1 .box-1 .photo {
	height: 60vw;
	margin-bottom: 10vw;
}
#sec2 .set1 .box-1 .photo::before {
	content: "※写真はイメージです。";
	position: absolute;
    bottom: 0;
    right: 0;
    z-index: 2;
}

#sec2 .set1 .box-1 .info {}

#sec2 .set1 .box-1 .info .box__dl {
	padding: 3vw 2vw;
}

#sec2 .set1 .box-1 .info .box__dl+.box__dl {
	margin-top: 4vw;
}

#sec2 .set1 .box-2 {
	position: relative;
	z-index: 2;
}

#sec2 .set1 .box-2 .photo {
	height: 60vw;
	margin-bottom: 10vw;
}

#sec2 .set1 .box-2 .info {}

#sec2 .set1 .box-2 .info .box__dl {
	padding: 3vw 2vw;
}

#sec2 .set1 .box-2 .info .box__dl+.box__dl {
	margin-top: 4vw;
}

#sec2 .set1 .deco {
	position: absolute;
	bottom: -31vw;
	right: 0;
	width: 83vw;
}

@media only screen and (min-width: 768px) {
	#sec2 {
		padding-bottom: 133px;
		padding-top: 76px;
	}

	#sec2 .set1 {
		margin-bottom: 0;
	}

	#sec2 .set1 h2 {
		margin-bottom: 55px;
	}

	#sec2 .set1 .note {
		font-size: 15px;
		margin-bottom: 59px;
	}

	#sec2 .set1 .box-1 {
		margin-bottom: 88px;
	}

	#sec2 .set1 .box-1 .photo {
		width: 590px;
		height: 410px;
		margin-bottom: 0;
		margin-left: -44px;
	}

	#sec2 .set1 .box-1 .info {
		width: 400px;
		margin-right: -19px;
		padding-top: 33px;
	}

	#sec2 .set1 .box-1 .info .box__dl {
		padding: 25px 20px 22px 26px;
	}

	#sec2 .set1 .box-1 .info .box__dl+.box__dl {
		margin-top: 20px;
	}

	#sec2 .set1 .box-2 {
		margin-bottom: 0;
	}

	#sec2 .set1 .box-2 .photo {
		width: 590px;
		height: 410px;
		margin-right: -47px;
		margin-top: 14px;
		margin-bottom: 0;
	}

	#sec2 .set1 .box-2 .info {
		width: 400px;
		margin-left: -22px;
	}

	#sec2 .set1 .box-2 .info .box__dl {
		padding: 26px 10px 23px 15px;
	}

	#sec2 .set1 .box-2 .info .box__dl+.box__dl {
		margin-top: 18px;
	}

	#sec2 .set1 .deco {
		bottom: -150px;
		right: -256px;
		width: 770px;
	}
}

#sec3 {
	position: relative;
	z-index: 2;
	padding-bottom: 15vw;
	background: url(../img/index/bg03.jpg);
}

#sec3 .box {
	position: relative;
	margin-bottom: 7vw;
}

#sec3 .box .photo {
	height: 60vw;
	margin-bottom: 6vw;
}

#sec3 .box .info {}

#sec3 .box .info .ttl {
	width: 53vw;
	margin-bottom: 3vw;
}

#sec3 .box .info .ttl span {
	display: block;
	line-height: 1;
	padding: 10px 0;
	text-align: center;
	font-size: 4vw;
	border: 1px solid rgba(255, 255, 255, 0.6);
}

#sec3 .box .info dl {
	margin-bottom: 6vw;
}

#sec3 .box .info dl dt {
	letter-spacing: 0.18em;
	margin-bottom: 2vw;
}

#sec3 .box .info dl dd {
	font-size: 5.06vw;
}

#sec3 .box .info dl dd small {
	font-size: 3.6vw;
}

#sec3 .box .info .text {
	margin-bottom: 0;
}

#sec3 .note {
	line-height: 35px;
}

@media only screen and (min-width: 768px) {
	#sec3 {
		padding-bottom: 131px;
	}

	#sec3 .box {
		margin-bottom: -44px;
	}

	#sec3 .box .photo {
		width: 550px;
		height: 390px;
		margin-bottom: 0;
		margin-top: 3px;
		margin-left: -11px;
	}

	#sec3 .box .info {
		width: 369px;
	}

	#sec3 .box .info .ttl {
		width: 271px;
		margin-bottom: 8px;
	}

	#sec3 .box .info .ttl span {
		padding: 4px 0;
		font-size: 20px;
	}

	#sec3 .box .info dl {
		margin-bottom: 53px;
	}

	#sec3 .box .info dl dt {
		letter-spacing: 6px;
		margin-bottom: 20px;
	}

	#sec3 .box .info dl dd {
		padding-right: 10px;
		font-size: 22px;
	}

	#sec3 .box .info dl dd small {
		font-size: 18px;
	}

	#sec3 .box .info .text {
		margin-bottom: 0;
	}

	#sec3 .note {
		line-height: 35px;
		margin-left: -11px;
	}
}

#sec4 {
	position: relative;
	margin-bottom: 0;
}

#sec4 .bg-parallax {
	min-height: 400px;
}

#sec4 .title {
	width: 40vw;
	height: 185px;
	position: absolute;
	top: 149px;
	left: 50%;
	z-index: 2;
	margin-left: -20vw;
}

#sec4 .title p {
	width: 100%;
	height: 100%;
	letter-spacing: .3em;
	line-height: 2;
}

@media only screen and (min-width: 768px) {
	#sec4 {
		margin-bottom: -39px;
	}

	#sec4 .bg-parallax {
		min-height: 510px;
	}

	#sec4 .title {
		width: 215px;
		height: 185px;
		top: 178px;
		left: calc(50% + 199px);
		margin-left: 0;
	}

	#sec4 .title p {
		width: 190px;
		height: 183px;
		line-height: 65px;
		letter-spacing: 6px;
	}
}

#sec5 {
	position: relative;
	z-index: 2;
	padding-top: 10vw;
	padding-bottom: 15vw;
}

#sec5 .set1 {
	align-items: center;
	position: relative;
	z-index: 2;
}

#sec5 .set1 h2 {
	text-align: center;
	letter-spacing: 0.2em;
    margin-bottom: 10vw;
    margin-top: 2vw;
}

#sec5 .set1 .photo {
	height: 60vw;
}

#sec5 .set2 {
	position: relative;
	z-index: 2;
}

#sec5 .set2 .right {
	padding-top: 5vw;
	margin-bottom: 7vw;
}

#sec5 .set2 .right dl {
	padding: 6vw 0;
}

#sec5 .set2 .right dl dt {
	font-size: 5.06vw;
	line-height: 1;
	margin-bottom: 4vw;
}

#sec5 .set2 .right dl+dl {
	border-top: 1px solid rgba(255, 255, 255, 0.3);
}

#sec5 .set2 .left {}

#sec5 .set2 .left .box .inside {
	padding: 6vw 5vw 10vw;
}

#sec5 .set2 .left .box .inside dl {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	padding: 10px 0;
	line-height: 30px;
	letter-spacing: 0.1em;
}

#sec5 .set2 .left .box .inside dl dd {
	text-align: right;
}

#sec5 .deco-1 {
	width: 63vw;
	position: absolute;
	top: 0;
	right: -16vw;
}

#sec5 .deco-2 {
	width: 67vw;
	position: absolute;
	top: 75vw;
	left: 0;
}

@media only screen and (min-width: 768px) {
	#sec5 {
		margin-bottom: 0;
		padding: 0 0 121px;
	}

	#sec5 .set1 {
		padding-left: 27px;
		padding-right: 10px;
		align-items: center;
		margin-bottom: 89px;
	}

	#sec5 .set1 h2 {
		text-align: right;
		letter-spacing: 0.2em;
		margin-bottom: 0;
		padding-right: 19px;
	}

	#sec5 .set1 .photo {
		width: 470px;
		height: 380px;
	}

	#sec5 .set2 {
		margin-bottom: 0;
	}

	#sec5 .set2 .right {
		width: 407px;
		margin-right: -40px;
		padding-top: 14px;
		margin-bottom: 0;
	}

	#sec5 .set2 .right dl {
		padding: 27px 0;
	}

	#sec5 .set2 .right dl dt {
		font-size: 22px;
		margin-bottom: 10px;
		letter-spacing: 4px;
	}

	#sec5 .set2 .left {
		width: 546px;
		padding-left: 27px;
	}

	#sec5 .set2 .left .box .inside {
		padding: 50px 35px 76px 43px;
	}

	#sec5 .set2 .left .box .inside dl {
		padding: 10px 0;
	}

	#sec5 .set2 .left .box .inside dl dd {
		text-align: right;
	}

	#sec5 .deco-1 {
		width: 668px;
		top: 41px;
		left: calc(50% + 175px);
		right: auto;
	}

	#sec5 .deco-2 {
		width: 534px;
		top: 402px;
		left: 0;
	}
}


@media only screen and (min-width: 768px) and (max-width: 1299px) {
	#sec5 .set2 .right {
		margin-right: 0;
	}
}