header {
	position:relative;
	height:80px;
	background: #fff;
	padding: 22px 0 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	z-index:3;
}
header .inner{
	display:flex;
}
.navi{
	margin:6px 0 0 auto;
	text-align:right;
}
.navi li{
	display:inline-block;
	margin:0 12px;
	font-size:14px;
}

.fixedLink{
	position:fixed;
	top:20vh;
	right:0;
	width:76px;
	background:#FFD87C url(../img/fixedlink_bg.webp) center top 12px no-repeat;
	background-size:78.94%;
	z-index:998;
}
.fixedLink a{
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
	padding:82px 0 18px;
	font-weight:700;
	letter-spacing:8px;
	writing-mode: vertical-rl;
	text-align:center;
}

.inner {
	width:90%;
	max-width: 1200px;
	margin:0 auto;
}
.inner > img{
	width:100%;
}

.fadeIn{
	opacity:0;
	transition:opacity 900ms ease-in-out 100ms;
}
.fadeIn.scrollin{
	opacity:1;
}

a.btn{
	display:block;
	margin:0 auto;
}
a.btn img{
	width:100%;
}

/*section 01------------*/
.sec01 {
	padding: 55px 0 70px;
	background: url(../img/sec01_bg.webp) no-repeat;
	background-size:100%;
	color: #fff;
	text-align: center;
}
.sec01 .inner > img {
	margin: 0 0 54px;
}
.sec01 p:nth-of-type(1) {
	display:inline-block;
	padding:0 0 14px;
	font-size:min(2.07vw,30px);
	border-bottom:1px solid #fff;
	font-weight:700;
}
.sec01 p:nth-of-type(2){
	padding:14px 0 0;
	font-size:min(1.38vw,20px);
	font-weight:700;
}

/*section 02------------*/
.sec02{
	padding: 55px 0 70px;
}
.sec02 dl{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	margin:0 0 39px;
}
.sec02 dl dt{
	width:11.58%;
}
.sec02 dl dt img{
	width:100%;
}
.sec02 dl dd{
	width:86.41%;
	font-size:min(2.76vw,40px);
	font-weight:600;
	line-height:1.4;
}

.sec02 .inner p{
	aspect-ratio: 1183 / 414;
	padding:0 0 0 65.9%;
	font-size:min(2.07vw,30px);
	font-weight:600;
	line-height:1.4;
	background:url(../img/sec02_bg.webp) no-repeat;
	background-size:100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

/*section 03------------*/
.sec03{
	padding: 80px 0 130px;
	background:#DAD7CD;
	text-align:center;
}

.sec03 h2{
	position:relative;
	padding:0 0 54px;
	font-size: 40px;
	line-height:1;
	font-size:min(2.76vw,40px);
	font-weight:700;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.sec03 h2 span{
	display:block;
	padding:23px 73px 0;
	margin:20px 0 0;
	border-top:1px solid #000;
	font-size:min(1.38vw,20px);
	font-weight:600;
}

.sec03 ul.chat{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin:0 0 65px;
}
.sec03 ul.chat li{
	width:46.5%;
	margin:0 1.7%;
}
.sec03 ul.chat li img{
	width: 100%;
}
.sec03 p{
	margin:0 0 57px;
	font-size:min(2.76vw,40px);
	font-weight:600;
	line-height:1.4;
}

.sec03 .cameraicon{
	width:12%;
	margin:0 auto 11px;
}
.sec03 ul.camera{
	display:flex;
	flex-wrap:wrap;
	margin:0 0 130px;
}
.sec03 ul.camera li{
	position:relative;
	width:calc(100% / 3);
	padding:0 39px;
	border-right:1px solid #000;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.sec03 ul.camera li:after{
	position:absolute;
	content:"";
	top:45px;
	right:-26px;
	width:36px;
	height:38px;
	background:url(../img/sec03_arrow.svg) no-repeat;
}
.sec03 ul.camera li:last-child{
	border:none;
}
.sec03 ul.camera li:last-child:after{
	display:none;
}
.sec03 ul.camera li img{
	width:100%;
}
.sec03 ul.camera li h3{
	display:flex;
	justify-content:center;
	align-items:center;
	aspect-ratio:370 / 123;
	margin:0 auto 39px;
	font-size:min(2.02vw,29px);
	line-height:1.2;
	font-weight:600;
	text-align:center;
}

.sec03 .estimate{
	margin:0 0 120px;
	border:4px solid #000;
}
.sec03 .estimate div{
	padding:10px 0 16px;
	background:#000;
	font-size:min(2.07vw,30px);
	font-weight:600;
	line-height:1;
	color:#fff;
}
.sec03 .estimate img{
	width:100%;
	padding:54px 5.5% 46px 3.9%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

.sec03 a.btn{
	width:78.5%;
}

/*section 04------------*/
.sec04 {
	padding:0 0 153px;
	background: url(../img/sec04_bg.webp) no-repeat;
	background-size:cover;
	text-align:center;
}
.sec04 .title{
	padding: 31px 0;
	margin:0 0 109px;
	background-color: rgba(0, 0, 0, 0.6);
	color: #fff;
	font-size:min(2.76vw,40px);
	font-weight:600;
}
.sec04 .logo{
	max-width:279px;
	margin:0 auto 92px;
}
.sec04 .logo img{
	width:100%;
}
.sec04 .slider {
	padding:47px 0 0;
	margin:0 auto 115px;
	background:rgba(255,255,255,0.5);
}
.sec04 .slider ul{
	display: flex!important;
	align-items: center!important;
	margin:0 auto;
}
.sec04 .slider ul li{
	text-align:center;
}
.sec04 .slider ul li h2{
	font-size:24px;
	font-weight:600;
	border-bottom:1px solid #000;
}
.sec04 .slider ul li h2 span{
	display:inline-block;
	margin:0 0 0 8px;
	font-size:16px;
}
.sec04 .slider ul li p{
	font-size:14px;
}
.sec04 .slider ul li p:first-line{
	font-size:16px;
}
.sec04 .slider ul li div{
	position:relative;
	width:65.62%;
	margin:25px auto 0;
}
.sec04 .slider ul li div:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url(../img/sec04_cover_360.svg) no-repeat;
	background-position:center;
	z-index:100;
}
.sec04 .slider ul li img{
	width:100%;
	filter: brightness(60%);
	transition: filter 0.3s ease;
}
.sec04 .slider ul li div:hover img{
	filter: brightness(100%);
	transition: filter 0.3s ease;
}

.bx-wrapper{
	max-width:1200px!important;
	background:transparent;
	border:none;
	margin:0 auto;
	padding:0;
	box-shadow:none;
}
.bx-wrapper .bx-controls-direction a{
	width:15px;
	height:30px;
}
.bx-next{
	top:calc(50% + 58px)!important;
	right:-54px!important;
	background:url(../img/btn_next.webp) no-repeat!important;
	background-size:100%!important;
}
.bx-prev{
	top:calc(50% + 58px)!important;
	left:-54px!important;
	background:url(../img/btn_prev.webp) no-repeat!important;
	background-size:100%!important;
}

.sec04 a.btn{
	width:62.75%;
}

@media screen and (max-width: 979px) {
	/*common mod*/
	.to-top{
		z-index:999!important;
	}
	#code_area{
		font-size:0;
	}
	
	header{
		position:fixed;
		width:100%;
	}
	#naviBtn{
		width:40px;
		height:32px;
		margin:4px 0 0 auto;
		background:url(../img/navibtn.svg) no-repeat 100%;
	}
	#naviBtn.open{
		background:url(../img/naviclose.svg) no-repeat 100%;
	}
	.navi{
		position:absolute;
		width:100%;
		top:75px;
		left:100%;
		padding:20px 0;
		text-align:center;
		background:#fff;
		z-index:1;
		transition:0.4s ease-in-out;
	}
	.navi.open{
		left:0;
	}
	.navi li{
		display:block;
		margin:15px auto;
	}
	.fixedLink{
		top:inherit;
		bottom:0;
		width:100%;
		height:19.32vw;
		background:#FFD87C;
	}
	.fixedLink a{
		padding:12px 5vw 17px 3vw;
		writing-mode: horizontal-tb;
		line-height:1;
		letter-spacing:4px;
		font-size:14px;
		color:#000;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
	}
	.fixedLink img{
		width:100%;
	}
	.fixedLink .pcVisble{
		display:none;
	}
	main{
		padding:80px 0 0;
	}
	/*section 01------------*/
	.sec01 {
		padding: 16px 0 23px;
		background: url(../img/sec01_bg_sp.webp) no-repeat;
		background-size:100%;
	}
	.sec01 .inner > img {
		margin: 0 0 22px;
	}
	.sec01 p:nth-of-type(1) {
		padding:0 0 15px;
		font-size:20px;
	}
	.sec01 p:nth-of-type(2){
		padding:18px 0 0;
		font-size:14px;
	}
	/*section 02------------*/
	.sec02{
		padding: 32px 0 30px;
	}
	.sec02 dl{
		margin:0 0 33px;
		justify-content:center;
	}
	.sec02 dl dt{
		width:31.9%;
	}
	.sec02 dl dd{
		width:100%;
		font-size:20px;
		text-align:center;
	}
	.sec02 .inner p{
		aspect-ratio: 369 / 308;
		padding:50.96vw 0 0;
		font-size:20px;
		background:url(../img/sec02_bg_sp.webp) no-repeat;
		background-size:94% auto;
		background-position:right;
	}
	/*section 03------------*/
	.sec03{
		padding: 56px 0 70px;
	}
	.sec03 h2{
		padding:0 0 27px;
		font-size:20px;
		line-height:1.2;
	}
	.sec03 h2 span{
		padding:15px 0 0;
		margin:10px 0 0;
		font-size:14px;
	}
	.sec03 ul.chat{
		margin:0 0 20px;
		justify-content:center;
	}
	.sec03 ul.chat li{
		width:72.4%;
		margin:0 0 20px;
	}
	.sec03 p{
		margin:0 0 50px;
		font-size:20px;
	}
	.sec03 .cameraicon{
		width:17%;
		margin:0 auto;
	}
	.sec03 ul.camera{
		margin:0 0 19px;
	}
	.sec03 ul.camera li{
		width:100%;
		padding:40px 10%;
		border-right:none;
		border-bottom:1px solid #000;
	}
	.sec03 ul.camera li:after{
		position:absolute;
		content:"";
		top:initial;
		right:0;
		left:calc(50% - 18px);
		bottom:-26px;
		background:url(../img/sec03_arrow_down.svg) no-repeat;
	}
	.sec03 ul.camera li h3{
		font-size:20px;
		aspect-ratio:initial;
	}
	
	.sec03 .estimate{
		margin:0 0 43px;
	}
	.sec03 .estimate div{
		padding:16px 0 20px;
		font-size:23px;
	}
	.sec03 .estimate img{
		padding:23px 4.5% 43px;
	}
	.sec03 a.btn{
		width:100%;
	}
	/*section 04------------*/
	.sec04 {
		padding:0 0 80px;
		background: url(../img/sec04_bg_sp.webp) no-repeat;
		background-size:cover;
	}
	.sec04 .title{
		margin:0 0 50px;
		font-size:20px;
	}
	.sec04 .logo{
		margin:0 auto 57px;
	}
	.sec04 .slider {
		padding:22px 11.5% 0;
		margin:0 auto 23px;
	}
	.sec04 .slider ul li h2 span{
		margin:0 0 0 2px;
	}
	.bx-next{
		right:-6%!important;
	}
	.bx-prev{
		left:-6%!important;
	}
	
	.sec04 .logo{
		width:49.7%;
	}
	.sec04 a.btn{
		width:100%;
	}


}