@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#gHeader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	box-sizing: border-box;
	border-bottom: none;
	z-index: 1;
	min-width: 1280px;
}
.mainVisual {
	margin-bottom: 149px;
	position: relative;
	height: 100vh;
	min-height: 600px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.mainVisual .movieBg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.mainVisual .movieBg video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: top;
}
.mainVisual h2 {
	margin: 16px 0 0 23px;
}
.mainVisual .scroll {
	margin-left: 10px;
	position: absolute;
	left: 50%;
	bottom: -64px;
	transform: translateX(-50%);
}
.mainVisual .scroll a {
	display: block;
}
.mainVisual .scroll a:hover {
	opacity: 0.7;
}
.mainVisual .link_logo{max-width: 292px;}
.mainVisual .link_logo{position: absolute; top: 76px; left: 47px;}
.mainVisual .link_logo .tt_box{max-width: 200px;}
.mainVisual .link_logo p{font-size: 14px; color: #fff;font-family: hiragino-kaku-gothic-pron, sans-serif; font-weight: 500; font-style: normal;}
.mainVisual .link_logo img{padding: 42px 0 0;}
.mainVisual .link_logo .center_tt{text-align: center; padding: 10px 0 0; }
.mainVisual .link_logo .link{width: 100%; height: auto;text-align: center; padding: 5px 0 0;}
.mainVisual .link_logo a{color: #fff; position: relative; display: inline-block; padding: 0 13px 0 0;font-family: hiragino-kaku-gothic-pron, sans-serif; font-weight: 500; font-style: normal; transition: 0s; font-size: 14px;} 
.mainVisual .link_logo a:before{content: ""; display: block; border-bottom: 2px solid #fff; border-right: 2px solid #fff; width: 7px; height: 7px; transform: rotateZ(-45deg) translateY(-50%); position: absolute; right: 0px; top: 50%; }
#main {
	margin-bottom: 0;
	overflow: hidden;
}
#main .business.content {
	margin-bottom: 98px;
	width: 1102px;
	display: flex;
	justify-content: space-between;
}


#main .business .photoBox {
	position: relative;
}

#main .business .photoBox img {
	position: absolute;
	top: 0;
	left: 0;
}

#main .business .photoBox img.active {
	position: relative;
}

#main .business .textBox {
	margin: 126px 80px 0 0;
}
#main .business .textBox h2 {
	margin-bottom: 28px;
	font-size: 1.4rem;
	font-weight: 500;
}
#main .business .textBox h2 span {
	margin-top: 1px;
	display: block;
	font-size: 2.3rem;
	font-weight: 400;
	letter-spacing: 0.25em;
	font-family: 'Oswald', sans-serif;
}
#main .business .textBox .title {
	margin-bottom: 28px;
	font-size: 3.4rem;
	font-weight: 400;
	font-style: italic;
	letter-spacing: -0.07em;
	line-height: 1;
	font-family: 'Lora', serif;
}
#main .business .textBox .title span {
	margin-top: 12px;
	display: block;
	color: #636363;
	font-size: 1.4rem;
	font-weight: 500;
	font-style: normal;
	letter-spacing: 0;
	font-family: 'Noto Sans JP', sans-serif;
}
#main .business .textBox p {
	margin-bottom: 79px;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 2.375;
}
#main .business .textBox .comBtn02 {
	margin-left: 10px;
}
#main .service {
	margin-bottom: 168px;
	padding-top: 148px;
	background: url(../img/index/service_bg.png) no-repeat top left / cover;
}
#main .service .content {
	max-width: 1400px;
	width: 100%;
}
#main .service ul {
	display: flex;
	flex-wrap: wrap;
}
#main .service li {
	margin-right: 2.9%;
	width: 31.4%;
}
#main .service li:nth-child(3) {
	margin-right: 0;
}
#main .service li .pho {
	margin-bottom: 15px;
}
#main .service li p {
	margin-bottom: 101px;
	font-weight: 300;
	text-align: center;
	line-height: 2;
}
#main .service li .ttl {
	margin-bottom: 13px;
	font-size: 3rem;
	letter-spacing: 0.15em;
	font-family: 'Oswald', sans-serif;
}
#main .service li .comBtn a {
	margin: 0 auto;
}
#main .magazine {
	padding: 158px 0 161px;
	background: url(../img/index/magazine_bg.jpg) no-repeat top center / cover;
}
#main .magazine .comTitleBox {
	margin-bottom: 62px;
}
#main .magazine .comTitleBox .headLine03 {
	margin-right: 52px;
}
#main .magazine .comBtn {
	float: right;
	margin: -60px -110px 0 0;
	position: relative;
	z-index: 11;
}

#main .bg_white{background: #fff;}
#main .lease{background: #fff; padding: 166px 0 0;}
#main .lease .lease_box{display: flex; justify-content: flex-end; width: 1100px; margin: 0 auto;}
#main .lease .textBox { margin: 0 0 0 111px; width: 514px;}
#main .lease .textBox h2 { margin-bottom: 12px; font-size: 1.6rem; font-weight: 500; color: #000;}
#main .lease .textBox h2 span { margin-top: 10px; display: block; font-size: 5.7rem; font-weight: 400; letter-spacing: 0.25em; font-family: 'Oswald', sans-serif; color: #000; }
#main .lease .textBox .title { margin-bottom: 28px; font-size: 3.2rem; font-weight: 400; font-style: italic; letter-spacing: -0.07em; line-height: 1; font-family: 'Lora', serif; color: #000; }
#main .lease .textBox .title span { margin-top: 12px; display: block; color: #636363; font-size: 1.4rem; font-weight: 500; font-style: normal; letter-spacing: 0; font-family: 'Noto Sans JP', sans-serif; color: #000; }
#main .lease .SP{display: none;}
#main .lease .PC{display: block;}
#main .lease .textBox p { margin-bottom: 79px; font-size: 1.6rem; font-weight: 300; line-height: 2.375; color: #000; }
#main .lease .textBox .comBtn02 { margin-left: 10px; }
#main .lease .textBox .comBtn02 a{display: block; border: 1px solid #000; color: #000; border-radius: 1000px; padding: 22px 0; text-align: center;font-size: 1.8rem; margin: 0;}

#main .faq {
	padding: 144px 0 159px;
	background-color: #fff;
}
#main .faq .content {
	width: 1100px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
#main .faq .headLine03 {
	margin-bottom: 50px;
	color: #000;
}
#main .faq p {
	color: #000;

}
#main .faq .lBox p {
	margin-bottom: 98px;
	line-height: 2.375;
}
#main .faq .comBtn a {
	color: #000;
	border-color: #000;
}
#main .faq .lBox {
	width: 313px;
}
#main .qaList {
	margin-top: 5px;
	width: 711px;
	border-bottom: 1px solid #E6E6E6;
}
#main .qaList li {
	padding: 31px 0;
	border-top: 1px solid #E6E6E6;
}
#main .qaList li .aBox {
	display: none;
	padding: 36px 50px 0;
}
#main .qaList li .aBox .top {
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 11px;
}
#main .qaList li .aBox p {
	line-height: 2.2;
}
#main .qaList li .qTxt {
	padding-left: 50px;
	cursor: pointer;
	font-size: 1.8rem;
	position: relative;
	background: url("../img/index/q_txt.png") no-repeat left 13px center;
}
#main .qaList li .qTxt:hover {
	opacity: 0.7;
}
#main .qaList li .qTxt:before {
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -14px;
	background: url("../img/common/icon02.png") no-repeat right center;
	width: 28px;
	height: 28px;
	content: "";
}
#main .qaList li .qTxt.on:before {
	margin-top: -11px;
	background: url("../img/common/icon03.png") no-repeat right center;
}
@media all and (max-width: 896px) {
	#gHeader {	min-width: auto;}
	.mainVisual {
		margin-bottom: 61px;
	}
	.mainVisual h2 {
		margin: -2px 0 0 0;
		width: 251px;
	}
	.mainVisual .scroll {
		margin-left: 0;
		width: 34px;
		bottom: -31px;
	}
	.mainVisual .link_logo{max-width: 292px;}
	.mainVisual .link_logo{position: absolute; top: 51px; left: 23px;}
	.mainVisual .link_logo .tt_box{max-width: 130px;}
	.mainVisual .link_logo p{font-size: 10px; font-weight: 600;}
	.mainVisual .link_logo img{padding: 21px 0 0; width: 100%; height: auto;}
	.mainVisual .link_logo .center_tt{padding: 10px 0 0; }
	.mainVisual .link_logo .link{padding: 5px 0 0;}
	.mainVisual .link_logo a{padding: 0 13px 0 0; font-size: 10px;font-weight: 600;} 
	.mainVisual .link_logo a:before{ width: 4px; height: 4px;}
	
	#main .business.content {
		margin-bottom: 50px;
		width: auto;
		display: block;
	}
	#main .business .photoBox {
		margin-bottom: 29px;
	}
	#main .business .photoBox img {
		width: 100%;
	}
	#main .business .textBox {
		margin: 0 auto;
	}
	#main .business .textBox h2 {
		font-size: 1.2rem;
	}
	#main .business .textBox h2 span {
		margin-top: 5px;
		font-size: 1.8rem;
	}
	#main .business .textBox .title {
		margin-bottom: 24px;
		font-size: 2.6rem;
		line-height: 1.07;
	}
	#main .business .textBox .title span {
		margin-top: 16px;
		font-size: 1.2rem;
	}
	#main .business .textBox p {
		margin-right: -5px;
		margin-bottom: 43px;
		font-size: 1.3rem;
		line-height: 2.6;
	}
	#main .business .textBox .comBtn02 {
		margin-left: 0;
	}
	#main .service {
		margin-bottom: 49px;
		padding-top: 47px;
		background-image: url(../img/index/sp_service_bg.jpg);
		background-size: 100% auto;
	}
	#main .service .content {
		max-width: inherit;
		width: auto;
	}
	#main .service ul {
		display: block;
	}
	#main .service li {
		margin: 0 auto 40px;
		width: auto;
	}
	#main .service li:last-child {
		margin-bottom: 0;
	}
	#main .service li .pho {
		margin-bottom: 20px;
	}
	#main .service li .pho img {
		width: 100%;
	}
	#main .service li .ttl {
		margin-bottom: 17px;
		font-size: 2.5rem;
	}
	#main .service li p {
		margin: 0 -5px 25px;
		font-size: 1.3rem;
		line-height: 1.92;
	}
	#main .magazine {
		padding: 48px 0;
		background-image: url(../img/index/sp_magazine_bg.jpg);
	}
	#main .magazine .comTitleBox {
		margin: 0 25px 24px;
	}
	
	#main .lease{ padding: 84px 0 0;}
	#main .lease .lease_box{display: flex; flex-direction: column; width: 90%; margin: 0 auto;}
	#main .lease .lease_box .photoBox{margin: 0 0 50px;}
	#main .lease .lease_box .photoBox img{width: 100%; height: auto;}
	#main .lease .textBox { margin: 0; width: 100%;}
	#main .lease .textBox h2 { margin-bottom: 9px; font-size: 1.3rem;}
	#main .lease .textBox h2 span { margin-top: 10px; font-size: 3.3rem; }
	#main .lease .textBox .title { margin-bottom: 18px; font-size: 2.3rem; line-height: 115%; }
	#main .lease .textBox .title span { margin-top: 10px; font-size: 1.4rem; line-height: 160%; }
	#main .lease .textBox p { margin-bottom: 40px; font-size: 1.3rem;}
	#main .lease .SP{display: block;}
	#main .lease .PC{display: none;}
	#main .lease .textBox .comBtn02 { margin-left: 0; }
	#main .lease .textBox .comBtn02 a{  padding: 15px 0; font-size: 1.1rem; margin: 0 auto;}
	
	#main .faq {
		padding: 45px 0 50px;
	}
	#main .faq .content {
		width: auto;
		display: block;
	}
	#main .faq .headLine03 {
		margin-bottom: 15px;
	}
	#main .faq .lBox {
		width: auto;
	}
	#main .faq .lBox p {
		margin-bottom: 30px;
		font-size: 1.1rem;
		line-height: 1.8;
	}
	#main .qaList {
		margin-bottom: 38px;
		width: auto;
	}
	#main .qaList li {
		padding: 23px 0 25px;
	}
	#main .qaList li .aBox {
		display: none;
		padding: 15px 40px 6px 27px;
	}
	#main .qaList li .aBox .top {
		font-size: 1.5rem;
		line-height: 1.9;
		margin-bottom: 7px;
	}
	#main .qaList li .aBox p {
		line-height: 2.2;
	}
	#main .qaList li .qTxt {
		padding: 0 50px 0 27px;
		font-size: 1.5rem;
		line-height: 1.95;
		position: relative;
		background: url("../img/index/sp_q_txt.png") no-repeat left 6px top 5px;
		background-size: 10px auto;
	}
	#main .qaList li .qTxt:hover {
		opacity: 1;
	}
	#main .qaList li .qTxt:before {
		margin-top: -22px;
		right: 0;
		background: url("../img/common/sp_icon01.png") no-repeat right center;
		background-size: 20px auto;
		width: 20px;
		height: 20px;
	}
	#main .qaList li .qTxt.on:before {
		margin-top: -24px;
		background: url("../img/common/sp_icon02.png") no-repeat right center;
		background-size: 20px auto;
	}
	#main .faq .comBtn a {
		margin: 0 auto;
	}
}
@media all and (max-width: 374px) {
	#main .business .textBox .title {
		font-size: 2rem;
	}
}