@charset "UTF-8";  

body {
	font-size	: 3.8vw;
	line-height	: 180%;
	font-weight	: 400;
	-webkit-text-size-adjust: 100%; /* for iOS */
	background: #fff;
}  
.pc ,.pc2 {
	display: none;
}

.sp {
	display: inline-block ;
}

.sp2 {
	display: block ;
}

#wrapper {
	width: 100%;
	margin: auto;
	padding: 0;
	position: relative;
}


/*====================================
ヘッダー
=====================================*/
header {
	position: absolute;
	width: 100%;
	margin: 0 auto;
	padding: 4% 5% 1%;
	display: flex;
	align-items: center;
	top: 0;
	left: 0;
	z-index: 110;
}
	header h1 {
		width: 20%;
		margin: 0;
		padding: 0;
		a {
			display: inline-block;
			width: 100%;
			margin: 0;
			padding: 0;
			img {
				width: 100%;
				height: auto;
			}
		}
	}
	nav {
		display: none;
	}


/*====================================
共通
=====================================*/
main {
	margin: 0 auto;
}

/* CONTACT */
section.contact_cont {
	margin: 0 auto;
	padding: 15% 4% 15%;
	background: url(../images/common/contact_bg_sp.jpg) top center / cover no-repeat;
	.contact_cont {
		margin: 0 auto;
		padding: 0;
		.contact_top {
		margin: 0;
		padding: 0;
		text-align: left;
			h2 {
				margin: 0 auto;
				padding: 0;
				span {
					display: inline-block;
					margin: 0;
					padding: 0;
					font-size: 9.8vw;
					line-height: 160%;
					font-family: "Montserrat", sans-serif;
					font-weight: var(--weight-extrabold1);
					letter-spacing: 0.05em;
					background: linear-gradient(90deg, #333333 0%, #aaa 100%);
					-webkit-background-clip: text;
					-webkit-text-fill-color: transparent;
				}
			}
			h3 {
				margin: -0.2em auto 0;
				padding: 0;
				span {
					display: inline-block;
					margin: 0;
					padding: 3px 0 0;
					font-size: 3.4vw;
					line-height: 160%;
					font-weight: var(--weight-bold1);
					color: #333;
					border-top: 1px solid #eb5c02;
				}
			}
			p {
				margin: 2em auto 0;
				font-size: 4.0vw;
				line-height: 200%;
			}
		}
		.cont_btn {
			margin: 8% 0 0;
			padding: 0;
			display: flex;
			justify-content: flex-end;
			a {
				display: inline-block;
				width: 66%;
				height: 3.2em;
				margin: 0;
				padding: 0;
				font-size: 3.4vw;
				line-height: 200%;
				font-family: "Noto Sans", sans-serif;
				font-weight: var(--weight-bold1);
				color: #fff;
				text-decoration: none;
				border: 1px solid #EB5B01;
				background: #EB5B01;
				border-radius: 1.6em;
				display: flex;
				justify-content: center;
				align-items: center;
			}
		}
	}
	.contact_cont.scrollin {
		-webkit-animation: bottomIn 0.5s ease-out 0s 1 forwards;
		animation: bottomIn 0.5s ease-out 0s 1 forwards;
	}
}


/*====================================
フッター
=====================================*/
footer {
	width: 100%;
	margin: 0 auto;
	padding: 15% 4% 5%;
	#footer_in {
		margin: 0 auto;
		padding: 0;
		div.footer_info {
			margin: 0;
			padding: 0;
			dl {
				margin: 0;
				padding: 0;
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				&:nth-of-type(2) {
					display: none;
				}
				dt {
					width: 30%;
					margin: 0;
					padding: 0;
					img {
						width: 100%;
						height: auto;
					}
				}
				dd {
					width: 100%;
					margin: 5% 0 0;
					padding: 0;
					p {
						margin: 0;
						padding: 0;
						font-size: 3.6vw;
						line-height: 200%;
						color: #666;
						&:nth-of-type(n + 2) {
							margin-top: 1.2em;
						}
						a{
							text-decoration: none;
						}
					}
				}
			}
		}
		div.foot_nav {
			margin: 0 0 10%;
			padding: 5% 0 0;
			ul {
				width: 100%;
				margin: 10% 0 0;
				padding: 0;
				list-style: none;
				text-align: left;
				display: flex;
				flex-wrap: wrap;
				div {
					display: inline-block;
					width: 55%;
					margin: 0;
					padding: 0;
					&:nth-of-type(even) {
						width: 45%;
					}
					a {
						display: block;
						margin: 0;
						padding: 0;
						font-size: 3.6vw;
						line-height: 180%;
						font-weight: var(--weight-bold2);
						font-family: "Montserrat", sans-serif;
						color: #333333;
						text-decoration: none;
						white-space: nowrap;
					}
					span {
						display: block;
						margin: 0;
						padding: 0;
						font-size: 3.6vw;
						line-height: 180%;
						font-weight: var(--weight-bold2);
						font-family: "Montserrat", sans-serif;
						color: #333333;
						white-space: nowrap;
					}
				}
				li {
					width: 55%;
					margin: 1.2em 0 0;
					padding: 0;
					&:nth-of-type(even) {
						width: 45%;
					}
					a {
						display: block;
						margin: 0;
						padding: 0 0 0 1em;
						font-size: 3.6vw;
						line-height: 180%;
						color: #333333;
						text-decoration: none;
						white-space: nowrap;
					}

				}
			}
		}
	}
	#footer_copy {
		margin: 15% auto 0;
		padding: 0;
		font-size: 3.2vw;
		line-height: 180%;
		font-family: "Montserrat", sans-serif;
		font-weight: var(--weight-nomal);
		color: #999999;
	}
}

#btm_cta {
	position: fixed;
	opacity: 0;
	visibility: hidden;
	width: 100%;
	margin: 0;
	padding: 0 5%;
	bottom: 3%;
	left: 0;
	z-index: 100;
	transition: 0.3s linear;
	&.on {
		opacity: 1;
		visibility: visible;
	}
	a {
		width: 100%;
		height: 3.4em;
		margin: 0;
		padding: 0;
		color: #fff;
		text-decoration: none;
		background: rgba(81,81,81,0.85);
		border-radius: 1.7em;
		box-shadow: 0 0 2px #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		span {
			margin: 0;
			padding: 0 1em 0 0;
			font-size: 3.5vw;
			line-height: 200%;
			border-right: 1px solid rgba(255,255,255,0.55);
		}
		strong {
			margin: 0;
			padding: 0 0 0 1em;
			font-size: 3.8vw;
			line-height: 180%;
			color: #fff;
			font-family: "Montserrat", sans-serif;
			font-weight: var(--weight-nomal);
		}
	}
}

#page_top {
	display: none;
}
