@charset "UTF-8";

/*//////////////////  メインビジュアルTOP ////////////////*/
.mv {
	position: relative;
}

.mv .title1 {
    position: absolute;
    left: 0%;
    top: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
	width: 100%;
}

.mv .title1 h1 {
	font-size: 2.3rem;
	font-weight: 500;
	line-height: 1.5em;
	color: #FFF;
	letter-spacing: 0.07em;
	text-shadow: 2px 2px 6px rgba(0,0,0,0.6);
	
}

.mv .title1 p {
	color: #FFF;
	font-size: 1.25rem;
	line-height: 1.6em;
	letter-spacing: 0.2em;
	text-shadow: 2px 2px 6px rgba(0,0,0,0.6);
	
}

@media (min-width: 576px) {
	.mv .title1 h1 {
		font-size: 3rem;

	}

	.mv .title1 p {
		color: #FFF;
		font-size: 1.7rem;
		line-height: 1.8em;

	}
}

@media (min-width: 768px) {
	.mv .title1 {
		left: 5%;
		width: auto;
	}
	
	.mv .title1 h1 {
		font-size: 2.2rem;
	}

	.mv .title1 p {
		color: #FFF;
		font-size: 1.2rem;

	}
}

@media (min-width: 992px) {
	.mv .title1 h1 {
		font-size: 2.4rem;
		letter-spacing: 0.1em;
	}

	.mv .title1 p {
		color: #FFF;
		font-size: 1.3rem;

	}
}

@media (min-width: 1200px) {
	.mv .title1 h1 {
		font-size: 2.6rem;
	}

	.mv .title1 p {
		color: #FFF;
		font-size: 1.4rem;

	}
}

@media (min-width: 1400px) {
	.mv .title1 h1 {
		font-size: 2.8rem;
	}

	.mv .title1 p {
		color: #FFF;
		font-size: 1.6rem;

	}
}

@media (min-width: 1600px) {
	.mv .title1 h1 {
		font-size: 3rem;
	}

	.mv .title1 p {
		color: #FFF;
		font-size: 1.8rem;

	}
}

/*//////////////// セクション1 //////////////////*/
.sec1 {
	background-image: url(../../assets/images/top/img01-sp.jpg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	padding: 1.6rem 0;
}

.sec1 .title1 h1 {
	font-size: 1.4rem !important;
	font-weight: 500 !important;
	line-height: 1.5em;
	margin-bottom: 0.6rem;
}

.sec1 .title1 h1, .sec1 p {
	color: #FFF;
}

@media (min-width: 576px) {
	.sec1 {
		background-image: url(../../assets/images/top/img01-pc.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		padding: 2rem 0;
	}
}

@media (min-width: 992px) {
	.sec1 {
		padding: 2.4rem 0 2.8rem;
	}
	
	.sec1 .title1 h1 {
		font-size: 1.65rem !important;
		margin-bottom: 0.8rem;
	}	
}

@media (min-width: 1200px) {
	.sec1 {
		padding: 3rem 0 3.4rem;
	}
	
	.sec1 .title1 h1 {
		margin-bottom: 1rem;
	}		
}

/*//////////////// セクション2 //////////////////*/
.sec2 {
	padding: 1.8rem 0 40px;
}

@media (min-width: 768px) {
	.sec2 {
		padding: 35px 0 50px;
	}
}

@media (min-width: 992px) {
	.sec2 {
		padding: 40px 0 60px;
	}
}

@media (min-width: 1200px) {
	.sec2 {
		padding: 60px 0 70px;
	}
}

/*//////////////// セクション3 //////////////////*/
.sec3 .box {
	margin-bottom: 30px;
}

.sec3 .box a div {
	overflow: hidden;
	cursor: pointer;
	width: 100%;
}

.sec3 .box a div img{
	display: block;
	transition-duration: 0.5s;
}

.sec3 .box a div img:hover{
	transform: scale(1.2);
	transition-duration: 0.5s;
}

.sec3 .box a p {
	margin-bottom: 0;
}

.sec3 .box a p:hover {
	color: #C7B4A0 !important;
	text-decoration: none;
	transition-duration: 0.3s;	
}

@media (min-width: 992px) {
	.sec3 .box {
		margin-bottom: 40px;
	}
	
	.sec3 .box p {
		letter-spacing: 0;
	}
}

/*//////////////// セクション4 //////////////////*/
.sec4 {
	padding: 1.8rem 0 40px;
}

@media (min-width: 768px) {
	.sec4 {
		padding: 50px 0;
	}
	
	.sec4 .title1 h1 {
		text-align: left;
	}
	
	.sec4 hr {
		margin-left: 0;
		margin-right: auto;
	}
	
	.sec4 .text-box {
		padding-left: 5%
	}
	
	.sec4 .btn1 {
		margin-left: 0;
		margin-right: auto;
	}
	
}

@media (min-width: 992px) {
	.sec4 {
		padding: 60px 0;
	}
	
	.sec4 .text-box {
		padding-left: 5.5%
	}
}

/*//////////////// 共通 //////////////////*/
@media (min-width: 1200px) {
	header {
		background: linear-gradient(90deg, rgba(144,124,111,0.00) 0%, rgba(211,203,198,0.00) 50%, rgba(240,238,236,0.00) 100%);
	}
	
	header.change-color {
		background: linear-gradient(90deg, rgba(144,124,111,1.00) 0%, rgba(211,203,198,1.00) 50%, rgba(240,238,236,1.00) 100%);
	}

	main {
		margin-top: -80px;
	}
}

section h2 {
	font-size: 1.4rem;
	text-align: center;	
}

@media (min-width: 992px) {
	section h2 {
		font-size: 1.5rem;
		text-align: center;	
	}	
}

@media (min-width: 1200px) {
	section h2 {
		font-size: 1.6rem;
		text-align: center;	
	}	
}