@charset "utf-8";

body .sp-item {
	display: none !important;
}

body .pc-item {
  display: block !important;
}

@media screen and (max-width: 640px) {
	body {
		min-width: inherit;
		height:100%;
	}

	body .sp-item {
		display: block !important;
	}

	body .pc-item {
		display: none !important;
	}

	body .sp-item img {
		width:100%;
	}
}

/* ----------------------------------------------------
    共通
---------------------------------------------------- */

body {
	font: normal 18px/1.7 "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	color:#000;
	text-align: center;
	overflow-x: hidden;
	max-width: 1024px;
	margin: 0 auto;
	margin-bottom: 118px;
}

body img {
	margin: 0 auto;
	max-width: 100%;
}

video {
	width: 100%;
}

p {
	font-feature-settings: "palt";
}

.sentence {
	margin-top: 40px;
}

.sentence p {
	margin-top: 40px;
}

.sentence p:first-of-type {
	margin-top: 0;
}

.inner {
	width: 724px;
	margin: 0 auto;
}

.marker {
	color: #000;
	background: rgb(255,255,100);
	background: linear-gradient(0deg, rgba(255,255,100,1) 70%, rgba(255,255,255,1) 70%);
	padding-bottom: 3px;
	font-weight: bold;
}

@media screen and (max-width: 640px) {
	img {
		max-width: 100%;
	}

	body {
		width: 100%;
		margin-bottom: 20%;
	}

	.inner {
		width: 94%;
	}
}

/* ----------------------------------------------------
    header
---------------------------------------------------- */
.pc04 {
	margin-top: -1px;
}

.pc03 {
	position: relative;
}

.pc06 {
	margin-top: 80px;
}

.btn {
	position: absolute;
	width: 622.1068px;
	bottom: 11.8%;
	left: 12%;
}

.phone {
	margin-top: 15px;
}

.line,
.phone {
	transition: transform 0.3s;
}

.line:hover,
.phone:hover {
	transform: scale(1.03);
}

.pc06 {
	position: relative;
}

.pc06btn {
	bottom: 12.4%;
}

.pc10 {
	position: relative;
}

.pc10btn {
	bottom: 12%;
}

.EBF0F2 {
	background-color: #EBF0F2;
	margin-top: 60px;
	padding: 60px 0;
}

.video-text {
	font-size: 36px;
	font-weight: bold;
	margin: 0 auto;
	line-height: 1.2;
}

video {
	margin-top: 30px;
}

@media screen and (max-width: 640px) {
	.sp03 {
		position: relative;
	}

	.pc06 {
		margin-top: 0;
	}

	.btn {
		width: 87%;
		bottom: 11.8%;
		left: 50%;
		transform: translateX(-50%);
		bottom: 10.5%;
	}

	.phone {
		margin-top: 2%;
	}

	.sp06 {
		position: relative;
	}

	.sp06btn {
		bottom: 11%;
	}
	
	.sp10 {
		position: relative;
	}
	
	.sp10btn {
		bottom: 11.1%;
	}

	body .sp-item .video-text {
		width: 85%;
	}

	video {
		margin-top: 15px;
	}

	.video-text {
		font-size: 26px;
	}
	
	.EBF0F2 {
		margin-top: 0px;
		padding: 40px 0;
	}
}

/*====================================================================
YouTube埋め込み
====================================================================*/
.responsive-video-container {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 aspect ratio */
	height: 0;
	overflow: hidden;
	max-width: 100%;
	background: #000;
	margin-top: 30px;
}

.responsive-video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}


/*====================================================================
スライダー
====================================================================*/
.voice-bg {
	background-color: #E8F2F9;
	padding-bottom: 60px;
}

.slick {
	padding: 0 50px;
}

.slick-bg {
	padding-top: 30px;
}

.slick li {
	padding: 4px;
}

.slick-list{
	overflow: visible;
}

.slick-prev:before,
.slick-next:before {
	color: #000;
}

.alert {
	font-size: 14px;
	margin-top: 10px;
}

@media screen and (max-width: 640px) {
	.voice-bg {
		padding-top: 20px;
	}

	.slick {
		padding: 0 25px;
	}

	.slick-bg {
		padding-top: 10px;
	}
}

/* ----------------------------------------------------
    会社情報
---------------------------------------------------- */

.map {
	height: 450px;
}

.company_name {
	margin-top: 35px;
	font-size: 24px;
	font-weight: bold;
}

address {
	font-size: 24px;
	line-height: 1.3;
	margin-top: 4px;
}

iframe {
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 640px) {
	.map {
		margin-top: 40px;
		padding-bottom: 0;
	}

	address {
		font-size: 18px;
		line-height: 1.6;
	}
}

/* ----------------------------------------------------
    footer
---------------------------------------------------- */
footer {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 14px;
	margin-top: 50px;
	background-color: #f8f8f8; /* 背景色を指定（必要に応じて調整） */
}

.footer_link {
	text-align: center;
	font-size: 16px;
}

.footer_link a {
	text-decoration: none;
	color: #333;
	margin-left: 30px;
}

.footer_link a:hover {
	opacity: 0.7;
}

.footer_link a:first-of-type {
	margin-left: 0;
}

/* ----------------------------------------------------
    固定ボタン
---------------------------------------------------- */
.fixed-bottom-link {
	position: fixed;
	bottom: 0;
	padding: 20px 0;
	background-color: #000000da;
	z-index: 100;
	width: 100%;
	display: none; /* 初期状態では非表示 */
	left: 0;
}

.fixed-bottom-link.show {
	display: block; /* クラスが付与されたら表示 */
}

.fixed_btn {
	display: flex;
	justify-content: space-between;
	gap: 8px;
	margin: 0 auto;
}

.fixed_btn a:hover {
	opacity: 0.8;
}

.fixed_btn_item {
	width: calc((724px - 8px)/2);
}

@media screen and (max-width: 640px) {
	.fixed-bottom-link {
		padding: 8px 0;
	}

	.fixed_btn {
		gap: 4px;
	}
}