/*============================================
メインビジュアル
===========================================*/
.main-visual {
	width: 100%;
	height: 0;
	padding-bottom:660px;
	background: url('../img/top/main.jpg') no-repeat;
	background-size: cover;
	background-position:center;
	position:relative;
}
.main-visual-text {
	position:absolute;
	top:50%;
	right: 0;
	width: 50%;
	transform: translateY(-50%);
	color: #fff;
	text-shadow:0px 1px 2px rgba(35,24,21,0.54);
	font-family: 'Noto Serif JP', serif;
	text-align: center;
}
.main-visual .lead-2 {
	font-size: 5rem;
	margin: 0;
	font-weight: bold;
}
@media screen and (max-width: 960px) {
	.main-visual {
		padding-bottom: 60%;
		margin-top: 60px;
		background: url('../img/top/sp/main.jpg') no-repeat;
		background-position: center;
		background-size: cover;
	}
	.main-visual-text {
		width: 60%;
	}
	.main-visual .lead-2 {
		font-size: 5vw;
	}
}

/*============================================
sec1
===========================================*/
.section-1 .row {
	margin: 50px 0 0;
	align-items: center;
}
.section-1 .image-wrapper{
	width:50%;
	max-width: 1520px;
	height: 0;
	padding: 12%;
	background: url(../img/top/sec1_img1.png) no-repeat;
	background-size: cover;
	background-position: top right;
}
.section-1 .text-wrapper{
	width:50%;
}
.section-1 .heading-3{
	text-align: left;
}
.section-1 .text-wrapper .description p {
		margin: 0 0 30px;
}
.section-1 .section-inner {
	padding: 100px 0 80px;
}
@media screen and (min-width: 961px) {
	.section-1 .text-wrapper .description {
		padding:0 30px;
		float: left;
		width: 80%;
		max-width:580px;
	}
	.section-1 .text-wrapper .heading-2{
		float: left;
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
}
@media screen and (max-width: 960px) {
	.section-1 .section-inner {
		padding: 60px 0;
	}
	.section-1 .heading-1{
		margin-bottom:10px;
	}
	.section-1 .row {
		margin: 0;
	}
	.section-1 .image-wrapper{
		background: url(../img/top/sp/sec1_img1.png) no-repeat;
		width:100%;
		padding: 35%;
		background-size: contain;
	}
	.section-1 .text-wrapper {
		width: 100%;
		padding: 30px 0 0;
		display: flex;
		flex-direction: column-reverse;
	}
	.section-1 .text-wrapper .description {
		margin: 0;
	}
	.section-1 .text-wrapper .description p {
		margin: 10px 0 30px 0;
	}
	.section-1 .text-wrapper .heading-2{
		width: auto;
		margin-bottom:30px;
	}
}
/*============================================
sec2
===========================================*/
.section-2{
	background: linear-gradient(180deg,#f9f9f9 0%,#f9f9f9 50%,#fff 50%,#fff 100%);
}
.section-2 .description {
	text-align: center;
}
.section-2 .image-wrapper {
	width: 90%;
	max-width: 1000px;
	margin: 50px auto 0;
}
.section-2 .row {
	margin: 0 auto 50px;
}
.section-2 .image {
	width: 30%;
	position:relative;
}
.section-2 .image img {
	width: 100%;
	-moz-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.35);
	-webkit-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.35);
	-ms-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.35);
	box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.35);
}
.section-2 .image h3{
	position:absolute;
	left:0;
	bottom:0;
	color: #fff;
	width: 100%;
	text-align: center;
	background-color: rgba(0,0,0,0.6);
	margin-bottom: 0;
	padding: 0.5em;
}
@media screen and (max-width: 960px) {
	.section-2 .image-wrapper {
		width: 90%;
		min-width: initial;
		margin: 30px auto 0;
	}
	.section-2 .image {
		width: 100%;
		max-width:350px;
		margin: 0 auto 30px;
	}
	.section-2 .image:last-of-type {
		margin: 0 auto;
	}
}
/*============================================
sec3
===========================================*/
.section-3 {
	background: url('../img/top/sec3_bg.jpg') no-repeat;
	background-size: cover;
	background-position: center;
	color: #fff;
}
.section-3 .section-inner{
	padding:60px 0;
}
.section-3 .heading-3,
.section-3 .heading-3 span{
	color: #fff;
}
.section-3 .description .heading-2{
	margin-bottom:30px;
}
.section-3 .description {
	max-width: 880px;
	margin:0 auto;
	text-align: center;
}
.section-3 .description p{
	margin-bottom: 30px;
}

@media screen and (max-width: 960px) {
	.section-3 {
		background: url('../img/top/sp/sec3_bg.jpg') no-repeat;
		background-position: top;
	}
	.section-3 .row {
		min-width: initial;
	}
	.section-3 .description {
		margin: 30px 0 0;
	}
}