@charset "utf-8";
/* CSS Document */

/*-----reset-----*/
html {
	font-size: 62.5%;
}

/* bodyのフォントサイズを1.6em（16px）に設定 */
body {
	font-size: 1.6em;
	padding-top: 0 !important;
	font-display: swap;
	color: #333333;
	font-family: "Noto Sans JP", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
	line-height: 1.4;

}

.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	border: 0;
}

* {
	margin: 0;
	padding: 0;
	border: none;
	list-style: none;
}

img {
	width: 100%;
	height: auto;
}

/*-----all-----*/
.wrapper:nth-child(even) {
	background-color: #fff4e0;
}

.inner {
	width: 1000px;
	margin: 0 auto;
	padding: 50px 0;
}

.clear {
	clear: both;
}


h3 {
	font-size: 18px;
	font-weight: bold;
}

a {
	color: #79a230;
}

a:hover {
	color: #9fc45c;
	text-decoration: none;
}

/*-----header-----*/
#header {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
}

#header .inner {
	padding: 0;
}

#header h1 {
	font-size: 12px;
}

#header .inner>img {
	float: left;
}

#header .inner>p {
	float: right;
}

#header .inner>p a:hover {
	opacity: 0.6;
}

/*-----menu-----*/
#menu {
	width: 990px;
	margin: 0 auto;
}

#menu li {
	list-style: none;
	background: url(../img/menu.png) center left no-repeat;
	float: left;
	padding: 10px 17px 10px;
	font-size: 18px;
	font-weight: bold;
}

#menu a {
	color: #333;
	text-decoration: none;
}

#menu a:hover {
	text-shadow: #fff4e0 0px 0px 15px;
	color: #ea9900;
}

/*-----header_slider-----*/
#header_slider {
	padding: 0;
	background: linear-gradient(135deg, #f3ffe0, #ffeece);

	.wrapper {
		margin: 0 auto;
		width: 100%;
		max-width: 1000px;
	}
}

#header_slider .inner {
	padding: 0;
}

/*--------------------メインスライダー--------------------*/
.image {
	max-width: 1000px;
	max-height: 510px;
	margin: auto;
}

.image img {
	width: 100%;
	height: 100%;
	text-align: center;
}

/*------------------------------------------------------------
 イメージスライダー                                        
------------------------------------------------------------*/
.jquery-cycle-item {
	background-color: transparent !important;
}

.nav {
	position: relative;
	width: 1000px;
	margin: -230px auto 250px;

	@media screen and (max-width: 768px) {
		margin: 0 auto;
		width: 100%;
		height: 100%;
		top: -100%;
		display: block;
	}
}

main {
	article {
		padding-top: 90px;

		@media screen and (max-width: 1330px) {
			padding-top: 66px;
		}

		section {
			width: 100%;
			padding: 65px 0 60px;

			@media screen and (max-width: 768px) {
				padding: 45px 0 40px;
			}

			h2 {
				margin-bottom: 1.5em;
				padding: 0 0 1em 0;
				font-size: 3rem;
				font-weight: bold;
				text-align: center;

				position: relative;

				@media screen and (max-width: 768px) {
					font-size: 2.4rem;
				}

				@media screen and (max-width: 480px) {
					font-size: 2.2rem;
				}

				&::after {
					position: absolute;
					content: "";
					height: 3px;
					border-radius: 4px;
					width: 60px;
					background: #ea9900;
					bottom: 0;
					left: 0;
					right: 0;
					margin: auto;
				}

				/* span {
					background: url(../img/h2.png) repeat-x center bottom;

				} */
			}

			.title_text {
				text-align: center;
				font-size: 1.6rem;
				font-weight: 500;
				margin-top: -1em;
			}

			.wrapper {
				margin: 0 auto;
				width: calc(100% - 40px);
				max-width: 1000px;
			}
		}
	}
}


/*-----contents-----*/
/* 初期状態で横並びにしておく */
.slider {
	display: flex;
	/* スライドを横並び */
	flex-wrap: nowrap;
	overflow: hidden;
	width: 100%;
}

.slide {
	flex: 0 0 100%;
	/* 1スライド幅 */
}

#jquery-cycle-nav {
	@media screen and (max-width: 768px) {
		top: calc(50% - 24px) !important;
		margin: auto !important;
	}
}

@media screen and (max-width: 768px) {
	.slider {
		width: 100% !important;
		height: auto !important;
	}

	#jquery-cycle-nav {
		width: 100% !important;
		height: auto !important;

	}

	.slider>* {
		position: static;
		width: 100vh !important;
		height: auto !important;
	}
}

/* メインkv */
#kv {
	padding: 0;
	margin: 0;
	background: #21BC9C;
	width: 100%;
	aspect-ratio: 1920/515;

	@media screen and (max-width: 480px) {
		aspect-ratio: 480/550;
	}

	.kv_bg {
		width: 100%;
		height: 100%;
		background: url(../img/top/kv_pc.png) no-repeat;
		background-size: cover;

		@media screen and (max-width: 480px) {
			background: url(../img/top/kv_sp.png) no-repeat;
			background-size: 100% 100%;

		}

		.kv_box {
			display: block;
			width: 90%;
			height: 100%;
			margin: 0 auto;

			@media screen and (max-width: 480px) {
				width: calc(100% - 8.3vw);
			}

			/* background: #000; */
			.kv_slider {
				width: 100%;
				height: 100%;
				display: none;

				.slick-list {
					@media screen and (max-width: 480px) {

						overflow: visible;
					}
				}


				&.slick-initialized {
					display: block;
					/*slick-initializedが付与されたら表示*/
				}


				.kv_slide {
					width: 100%;
					height: 100%;
					display: block;

				}

				.slick-track {
					height: 100%;
				}

				ul {
					display: flex;
					justify-content: space-between;
					width: 100%;
					height: 100%;

					@media screen and (max-width: 480px) {
						flex-direction: column;
					}

					li {
						@media screen and (max-width: 480px) {
							flex-direction: column;
							width: 100% !important;
						}

						&.text {
							display: flex;
							align-items: center;
							width: 55%;

							.text_box {
								letter-spacing: 0.01em;
								text-align: left;
								width: 100%;

								@media screen and (max-width: 480px) {
									padding-top: 6vw;
								}

								h3 {
									line-height: 1;
									font-weight: 600;
									color: white;
									font-size: 2.7vw;
									text-shadow: .1vw .2vw .2vw rgba(0, 0, 0, 0.2);

									@media screen and (max-width: 480px) {
										text-align: center;
										font-size: 4.6vw;
									}

									small {
										display: inline-block;
										font-size: 2.1vw;
										margin-bottom: 1.8vw;
										position: relative;

										@media screen and (max-width: 480px) {
											font-size: 4.1vw;
											margin-bottom: 4.2vw;
										}

										&::after {
											position: absolute;
											content: "";
											background: url(../img/top/kv_line.svg) repeat-x;
											background-size: auto 100%;
											width: 95%;
											height: 0.36vw;
											bottom: -1.2vw;
											left: 0;
											margin: auto;
										}

										@media screen and (max-width: 480px) {
											&::after {
												bottom: -2vw;
												height: 0.9vw;

											}
										}
									}
								}

								.maincopy {
									display: block;
									margin-top: 1.75vw;
									background: white;
									font-weight: 800;
									text-align: center;
									padding: 1vw 0 2.3vw;
									position: relative;
									margin-left: 0.7vw;
									width: 100%;

									@media screen and (max-width: 480px) {
										margin-top: 4vw;
										padding: 3.8vw 0 6vw;
									}

									&::before {
										display: block;
										position: absolute;
										content: "";
										width: 100%;
										height: 100%;
										max-height: 100%;
										background: url(../img/top/kv_maincopy.png) no-repeat;
										background-size: 100% 100%;
										top: -0.7vw;
										left: -0.7vw;
										/* right: 0;
										bottom: 0; */
										margin: auto;
									}

									@media screen and (max-width: 480px) {
										&::before {
											top: -1vw;
											left: -1vw;

										}
									}


									h2 {
										margin: 0;
										padding: 0;
										color: #FF8500;
										font-size: 3.58vw;
										line-height: 4vw;
										display: flex;
										align-items: center;
										justify-content: center;

										@media screen and (max-width: 480px) {
											font-size: 7vw;
										}

										&.copy2 {
											font-size: 3.2vw;

										}

										span {
											font-size: 4vw;
											font-feature-settings: "palt";
											letter-spacing: 0.03em;

											@media screen and (max-width: 480px) {
												font-size: 8vw;
											}

										}

										&::after {
											display: none;
										}
									}
								}
							}
						}

						&.img {
							width: 41%;

							img {
								width: 100%;
								max-height: 100%;
								height: auto;
							}

							.img1 {
								width: 100%;
								height: 100%;
								display: flex;
								align-items: flex-end;
								position: relative;

								#stampImg {
									opacity: 0;
									position: absolute;
									z-index: 2;
									width: 25%;
									aspect-ratio: 193/227;
									left: 28.5%;

									bottom: 7.8%;
									margin: auto;


									@media screen and (max-width: 480px) {
										left: 54.5%;
										width: 24%;
										bottom: 21%;
									}

									&.on {
										animation: stampImg 3s ease-in-out forwards;
									}

								}


								#stamp5 {
									display: block;
									position: absolute;
									content: "";
									width: 13.5vw;
									aspect-ratio: 1/1;
									background-size: contain;
									margin: auto;
									left: -5%;
									top: 25%;
									z-index: 3;

									@media screen and (max-width: 480px) {
										width: 44%;
										left: 10%;
										top: 10%;
										transform: scale(1) rotate(8deg);
									}



									&.active {
										animation: stampPress 3s ease-in-out forwards;
									}
								}

								&::after {
									display: block;
									position: absolute;
									content: "";
									background: url(../img/top/stamp4.png) no-repeat;
									width: 11vw;
									aspect-ratio: 1.1/1;
									background-size: contain;
									right: 0;
									bottom: 2%;
									margin: auto;
								}


								@media screen and (max-width: 480px) {
									&::after {

										width: 27VW;
										right: auto;
										left: 2VW;
										bottom: 1VW;
									}
								}

								img {
									&.kv_1 {
										display: block;
										margin-top: auto;
										margin-bottom: 0;
										max-width: 70%;
										height: auto;
										object-fit: contain;
										margin-left: auto;
										margin-right: 22.5%;

										@media screen and (max-width: 480px) {
											max-width: 68.7%;
											margin-right: 0vw;
										}
									}
								}

							}

							.img2 {
								width: 100%;
								height: 100%;
								display: flex;
								align-items: center;

								@media screen and (max-width: 480px) {
									max-width: calc(100% - 5vw);
									margin: 0 auto;
									margin-bottom: 8vw;
								}
							}
						}
					}
				}
			}
		}
	}
}

/* アニメーション定義 */
@keyframes stampPress {
	0% {
		left: -5%;
		top: 25%;
		transform: scale(1) rotate(0deg);


	}

	45% {
		top: 47%;
		left: 21%;
		transform: scale(0.92) rotate(2deg);
	}

	55% {
		top: 47%;
		left: 21%;
		transform: scale(0.92) rotate(2deg);
	}

	/* 押す位置 */
	100% {
		left: -5%;
		top: 25%;
		transform: scale(1) rotate(0deg);



	}

	/* 元の位置に戻る */
}

@media screen and (max-width: 480px) {
	@keyframes stampPress {
		0% {
			left: 10%;
			top: 10%;
			transform: scale(1) rotate(8deg);


		}

		45% {
			top: 32%;
			left: 43%;
			transform: scale(0.92) rotate(8deg);
		}

		55% {
			top: 32%;
			left: 43%;
			transform: scale(0.92) rotate(8deg);
		}

		/* 押す位置 */
		100% {
			left: 10%;
			top: 10%;
			transform: scale(1) rotate(8deg);



		}

		/* 元の位置に戻る */
	}
}


@keyframes stampImg {
	0% {

		opacity: 0;
	}

	50% {
		opacity: 0;
	}

	/* 押す位置 */
	60% {
		opacity: 1;
	}

	/* 押す位置 */
	100% {
		opacity: 1;
	}

	/* 元の位置に戻る */
}




#service {

	.link_banner {
		margin-bottom: 4em;

		ul {
			display: flex;
			justify-content: center;

			@media screen and (max-width: 480px) {
				flex-direction: column;
			}

			li {
				text-align: center;
				text-decoration: none;
				margin: 0 5px;
				width: 40%;
				transition: all .1s;

				@media screen and (max-width: 480px) {
					margin: 0 auto 5px;
					width: 100%;
				}

				a {
					&:hover {
						opacity: .7;
					}
				}

				strong {

					display: inline-block;
					margin-bottom: 10px;
					font-size: 1.8rem;

					@media screen and (max-width: 480px) {
						font-size: 1.5rem;
					}
				}
			}
		}

	}

	.service_box {
		display: flex;
		justify-content: space-between;

		@media screen and (max-width: 480px) {
			flex-direction: column;
		}

		.img {
			width: 30%;

			@media screen and (max-width: 480px) {
				width: 100%;
			}

		}

		.text {
			width: 65%;

			@media screen and (max-width: 480px) {
				width: 100%;
			}

			h3 {
				margin-bottom: 15px;
			}

			p {
				line-height: 2.6rem;

				@media screen and (max-width: 480px) {
					font-size: 1.4rem;
					line-height: 2.2rem;
				}

			}
		}
	}
}


#merit {
	background: #fff4e0;

	.merit_box {
		ul {
			margin-top: 40px;
			display: flex;
			justify-content: space-between;

			@media screen and (max-width: 480px) {
				flex-direction: column;
			}

			li {
				width: 31%;
				text-align: center;

				@media screen and (max-width: 480px) {
					width: 100%;
					margin-bottom: 20px;

					img {
						max-width: 250px;
						margin: 0 auto;
					}
				}

				&:nth-child(3) {
					margin: 0;
				}

				h3 {
					line-height: 3;
					color: #ea9900;
					font-size: 1.8rem;

					@media screen and (max-width: 480px) {
						font-size: 1.6rem;
					}
				}

				p {
					text-align: left;

					@media screen and (max-width: 480px) {
						font-size: 1.4rem;
					}
				}


			}
		}
	}
}

#flow {
	.flow_box {
		margin-top: 2em;

		ol {
			display: flex;
			justify-content: space-between;

			@media screen and (max-width: 480px) {
				width: 100%;
				flex-direction: column;
				justify-content: center;
				align-items: center;
			}

			li {
				width: 19%;
				position: relative;

				@media screen and (max-width: 480px) {
					width: 100%;
					margin-bottom: 80px;
				}

				&::after {
					position: absolute;
					content: '';
					background: url(../img/flow09.png) no-repeat;
					width: 18%;
					background-size: contain;
					background-position: center center;
					top: 0;
					bottom: 0;
					right: -24%;
					margin: auto;

				}

				@media screen and (max-width: 480px) {
					&::after {
						position: absolute;
						content: '';
						background: url(../img/flow09.png) no-repeat;
						width: 40px;
						height: 40px;
						background-size: contain;
						background-position: center center;
						top: calc(100% + 15px);
						transform: rotate(90deg);
						bottom: auto;
						right: 0;
						left: 0;
						margin: auto;

					}

				}

				&:last-child {
					margin: 0;

					&::after {
						display: none;
					}
				}

				figure {
					padding: 0;
					margin: 0;
					display: flex;
					flex-direction: column;
					height: 100%;

					figcaption {
						display: flex;
						flex-direction: column;
						align-items: center;
						text-align: center;

						p {
							font-size: 1.4rem;
						}

						img {

							width: 30px;
							margin-bottom: 10px;

						}
					}

					>img {
						padding-top: 10px;
						margin-top: auto;

						@media screen and (max-width: 480px) {
							max-width: 200px;
							margin: 0 auto;
						}

					}
				}

			}
		}
	}
}

#scene {
	background: #fff4e0;

	.scene_box {
		margin-top: 50px;

		ul {
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;

			li {
				width: 31%;
				text-align: center;

				@media screen and (max-width: 480px) {
					width: 47%;
					height: 100%;
				}

				h3 {
					line-height: 2;
					color: #ea9900;
					font-size: 1.7rem;

					@media screen and (max-width: 480px) {
						font-size: 1.8rem;
						line-height: 2.8rem;
					}
				}

				p {
					text-align: left;
					font-size: 1.4rem;

					@media screen and (max-width: 480px) {
						font-size: 1.4rem;
						margin-top: 5px;
					}
				}

				&:nth-child(4),
				&:nth-child(5),
				&:nth-child(6) {
					margin-top: 50px;

					@media screen and (max-width: 480px) {
						margin: 0;
					}

				}
			}
		}
	}
}

#data {
	.data_box {
		margin-top: 2em;
		width: 100%;

		ul {
			display: flex;
			justify-content: space-between;

			@media screen and (max-width: 480px) {
				flex-direction: column;
				width: 100%;
			}

			li {
				width: 45.5%;
				background-color: #fff;
				border: 4px solid #ffe5b7;
				padding: 15px;
				display: flex;
				flex-wrap: wrap;
				justify-content: space-between;
				align-items: flex-start;

				@media screen and (max-width: 480px) {
					width: 100%;
					max-width: calc(100% - 30px);
					margin-bottom: 10px;

					&:last-child {
						margin: 0;
					}
				}

				>img {
					width: 30%;
				}


				div.text {
					width: 65%;
					padding-bottom: 20px;

					h3 {
						color: #ea9900;
						margin-bottom: 10px;
						font-size: 1.5rem;
					}

					p {
						background: none;

						@media screen and (max-width: 480px) {
							font-size: 1.2rem;
						}
					}
				}

				p.fukidasi {
					width: 100%;
					margin-top: auto;
					;
					padding: 15px 20px;
					font-weight: bold;
					color: #fff;
					background-color: #9fc45c;
					position: relative;
					z-index: 0;
					flex-grow: 1;

					@media screen and (max-width: 480px) {
						font-size: 1.4rem;
					}
				}
			}
		}
	}
}

#planning {
	background: #fff4e0;

	.planning_box {
		margin-top: 2em;

		ul {
			li {

				background-color: #fff;
				border: 4px solid #ffe5b7;
				padding: 30px;
				margin-bottom: 3.5rem;

				&:last-child {
					margin-bottom: 0;
				}

				h3 {
					color: #ea9900;
					margin-bottom: 20px;
					font-size: 2rem;
				}

				p {
					background: none;
					margin-bottom: 20px;
					line-height: 2.6rem;
				}

				.buttons {
					margin-top: 30px;
					display: flex;
					justify-content: space-between;

					@media screen and (max-width: 480px) {
						flex-direction: column;
						margin-top: 20px;
					}

					a {
						width: 49.5%;
						text-align: center;
						font-size: 1.8rem;
						font-weight: 700;
						background: #9fc45c;
						color: white;
						text-decoration: none;
						border-radius: 3px;
						padding: 15px 0;

						@media screen and (max-width: 480px) {
							width: 100%;
							margin-bottom: 5px;
							font-size: 1.4rem;

							&:last-child {
								margin: 0;
							}
						}

						&:nth-child(2) {
							background: #ea9900;
						}

						transition: all .1s;

						&:hover {
							opacity: .7;
						}
					}
				}
			}
		}
	}
}

#introduce {
	ul {
		padding: 40px 0 20px;

		li {
			margin-bottom: 15px;
			display: flex;
			justify-content: space-between;
			align-items: center;

			div {
				width: 25%;
				font-size: 1.6rem;
				font-weight: bold;
				padding: 15px;
				color: #fff;
				display: inline-block;
				position: relative;
				z-index: 0;

				@media screen and (max-width: 480px) {
					width: 20%;
					font-size: 1.4rem;
					padding: 10px;
				}
			}

			>p {
				width: 68%;
				font-size: 1.6rem;
			}

			.orange:before {
				content: "";
				position: absolute;
				top: 25%;
				right: -15px;
				margin-left: -10px;
				display: block;
				width: 0px;
				height: 0px;
				border-style: solid;
				border-width: 15px 0 15px 15px;
				border-color: transparent transparent transparent #ea9900;
				z-index: 0;
			}

			.green:before {
				content: "";
				position: absolute;
				top: 25%;
				right: -15px;
				margin-left: -10px;
				display: block;
				width: 0px;
				height: 0px;
				border-style: solid;
				border-width: 15px 0 15px 15px;
				border-color: transparent transparent transparent #9fc45c;
				z-index: 0;
			}
		}
	}

	.orange {
		background-color: #ea9900;
	}

	.green {
		background-color: #9fc45c;
	}
}

#introduce #introduce #introduce li #introduce li #introduce li #introduce li p {
	margin-left: 30px;
	display: inline-block;
}

#faq {
	background: #fff4e0;

	.faq_box {
		dl {
			display: flex;
			align-items: center;
			flex-wrap: wrap;
			justify-content: space-between;

			dt {
				position: relative;
				z-index: 0;
				width: 100%;
				margin-bottom: 15px;


			}

			dd {
				width: 100%;
				margin-bottom: 30px;
				padding-bottom: 30px;
				position: relative;
				z-index: 0;
				border-bottom: 1px solid #a7a7a7;

			}
		}

		dt:before {
			position: absolute;
			content: "Q";
			width: 30px;
			height: 30px;
			display: flex;
			align-items: center;
			text-align: center;
			justify-content: center;
			font-size: 2.2rem;
			font-weight: bold;
			color: #fff;
			background-color: #9fc45c;
		}

		dd:before {
			position: absolute;
			content: "A";
			width: 30px;
			height: 30px;
			justify-content: center;
			display: flex;
			align-items: center;
			text-align: center;
			font-size: 2.2rem;
			font-weight: bold;
			color: #fff;
			background-color: #ea9900;
		}

		@media screen and (max-width: 480px) {

			dd::before,
			dt::before {
				font-size: 1.5rem;
			}
		}

		p {
			font-size: 1.6rem;
			padding-left: 50px;

			@media screen and (max-width: 480px) {
				font-size: 1.4rem;
			}

		}
	}

}

#inquiry table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 auto 20px;

	@media screen and (max-width: 480px) {
		display: block;
		width: 100%;

		tbody,
		tr,
		th,
		td {
			display: block;
			width: 100%;
			font-size: 1.3rem;
		}

		th {
			padding: 0;
			border: none;
		}

		td {
			padding: 0;
			padding: 5px 0 10px;
			margin-bottom: 10px;
		}
	}
}

#inquiry th {
	padding: 5px 10px 5px 20px;
	color: #333;
	font-weight: normal;
	text-align: left;
	border-bottom: 1px dotted #aaa;
}

#inquiry td {
	padding: 5px 10px;
	border-bottom: 1px dotted #aaa;
}

#inquiry th em {
	color: #f00;
}

#inquiry td input[type="text"],
#inquiry td input[type="email"],
#inquiry td textarea {
	border: 1px solid #aaa;
	width: 90%;
	padding: 4px 3px;

	@media screen and (max-width: 480px) {
		width: 100%;
		padding: 10px 12px;
		max-width: calc(100% - 24px);
	}
}

#inquiry form#mailform label {
	text-decoration: none;
}

#inquiry input#button_mfp_reset,
#inquiry input#button_mfp_goconfirm {
	background-color: transparent;
}

.error {
	background: #FFE4E1;
	border-radius: 10px;
	margin: 2em auto;
	padding: 1em;
	color: #f00;
	font-size: 1.3em;
}

#banner {
	background: #fff4e0;

	.banner_box {
		display: flex;
		justify-content: center;

		ul {
			display: flex;
			justify-content: center;

			@media screen and (max-width: 480px) {
				flex-direction: column;
			}

			li {
				text-align: center;
				text-decoration: none;
				margin: 0 5px;
				width: 40%;
				transition: all .1s;

				@media screen and (max-width: 480px) {
					margin: 0 auto 5px;
					width: 100%;
				}

				a {
					&:hover {
						opacity: .7;
					}
				}

				strong {

					display: inline-block;
					margin-bottom: 10px;
					font-size: 1.8rem;

					@media screen and (max-width: 480px) {
						font-size: 1.5rem;
					}

				}
			}
		}
	}
}

/*----- modellist -----*/
#modellist h3 {
	margin: 20px 0;
	text-align: center;
	font-size: 20px;
	color: #ea9900;
}

#modellist ul {
	margin-left: 150px;
	;
}

#modellist li {
	list-style-image: url(../img/modellist01.gif);
	width: 375px;
	float: left;
}

#modellist li:nth-child(even) {
	margin-left: 100px;
}



/*----- company -----*/
#company {
	border: 5px solid #dadada;
	background: #fff;
	margin: 20px 0;
	padding: 20px;
	position: relative;
}

#company h3 {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #666;
	font-weight: bold;
	background: none;
	line-height: 1;
	height: auto;
	margin: 0;
	padding: 0;
}

#company dl {
	margin: 20px 0 0 20px;
}

#company dt {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 30px;
}

#company dt a {
	display: inline-block;
	padding-left: 135px;
	background-image: url(../img/pkb.png);
	background-repeat: no-repeat;
	background-position: left center;
	text-decoration: none;
	color: #333;
}

#company dt a:hover {
	opacity: 0.6;
}

#company dd {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#company dd a:hover {
	text-decoration: none;
}

#company .contact {
	position: absolute;
	top: 50px;
	right: 30px;
}

#company .ssl {
	position: absolute;
	bottom: 25px;
	right: 120px;
}

#company .pmark {
	position: absolute;
	bottom: 10px;
	right: 20px;
}

#company .msa {
	position: absolute;
	bottom: 10px;
	right: 170px;
}

#company .isms {
	position: absolute;
	bottom: 10px;
	right: 100px;
}

#company .pmark:hover {
	opacity: 0.6;
}

/*----- banner -----*/
#banner {
	margin: 0;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
}

#banner .inner {
	padding: 0;
	text-align: center;
}

#banner a {
	margin: 0 10px;
	max-width: 30%;
}



/*----- pagetop -----*/
.pagetop {
	position: fixed;
	bottom: 50px;
	right: 55px;
}

.pagetop a {
	display: block;
	width: 50px;
	height: 50px;
	background-color: #9fc45c;
	text-align: center;
	color: #fff;
	font-size: 24px;
	text-decoration: none;
	line-height: 50px;
}

.pagetop a:hover {
	background-color: #79a230;
}

/*------------------------------------------------------------
 商標                                   
------------------------------------------------------------*/
.trademark {
	margin: 50px;
	width: 900px;
}

.trademark p {
	text-align: justify;
	font-size: 0.9rem;
	font-weight: normal;
}




#slide_box {
	overflow: hidden;
	position: fixed;
	width: 150px;
	bottom: 0;
	right: 0;
	padding: 0;
	filter: drop-shadow(3px 3px 3px #999);
}

#slide {
	width: 100%;
	padding: 0;
}

#slide img {
	width: 100%;
	margin: 0;

}

#slide-in {
	padding: 0;
	margin: 0;
}

.close {
	display: block;
	width: 30px;
	height: 30px;
	z-index: 9999;
	float: right;
	margin-bottom: -30px;
	position: relative;
	content: " "
}


/*------------------------------------------------------------*/
/* テレワーク                                                 */
/*------------------------------------------------------------*/
.telework {
	box-sizing: border-box;
	width: 100%;
	margin: -50px 0;
	padding: 20px;
	font-size: 14px;
	font-weight: bold;
	color: #FF6347;
	border: #FF6347 solid 4px;
	border-radius: 10px;
	text-align: center;
	line-height: 1.4;
}

.telework a {
	font-size: 16px;
	font-weight: bold;
	color: #6495ED;
	text-decoration: none;
}

.lightbox .lb-image {
	max-width: 1000px !important;
	height: auto !important;

	img {
		width: 100% !important;
		height: auto !important;
	}
}