@charset "utf-8";
/**
/* 共通 CSS
----------------------------------------------- */
.gray_bg{
	background: #FAFAFA;
}
/*　　見出し　　*/
.guide-ttl{
	position: relative;
	margin-bottom: 4rem;
}
.guide-ttl.border::before{
	position: absolute;
	content: '';
	left: 0;
}
.guide-ttl.border.green::before{
	background: #049D5A;
	width: 11.0625rem;
	height: 0.1875rem;
	bottom: -2rem;
}
.guide-ttl.border.gray::before{
	background: #BCD0C7;
	width: 7rem;
	height: 0.125rem;
	bottom: -1.5rem;
}
.guide-ttl.border.white::before{
	background: #FFFFFF;
	width: 7rem;
	height: 0.125rem;
	bottom: -1.5rem;
}
.guide-ttl.border.center::before{
	left: 50%;
	transform: translateX(-50%);
}
.guide-ttl .roma{
	font-family: "Poppins", sans-serif;
	color: #049D5A;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.45;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin-bottom: 1rem;
}
.guide-ttl h2{
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.4;
}
.guide-ttl.border.white h2{
	color: #FFFFFF;
}
@media only screen and (max-width: 767px) {
	.guide-ttl{
		margin-bottom: 2rem;
	}
	.guide-ttl.border.green::before{
		width: 5.53125rem;
		bottom: -1rem;
	}
	.guide-ttl.border.gray::before{
		width: 3.5rem;
		bottom: -0.75rem;
	}
	.guide-ttl.border.white::before{
		width: 3.5rem;
		bottom: -0.75rem;
	}
	.guide-ttl .roma{
		font-size: 1.125rem;
		line-height: 1;
		margin-bottom: 0.5rem;
	}
	.guide-ttl h2{
		font-size: 1.40625rem;
		line-height: 1.17;
	}
}
/*　　アニメーション　　*/
.js-inview{
	opacity: 0;
	transition: 1.5s;
}
.js-inview.active{
	opacity: 1;
}
.c-green{
	color: #059D5A;
}
/**
/* トップページ CSS
----------------------------------------------- */
/*　　MV　　*/
.mv-view{
	position: relative;
}
.mv-view .mv-view-Img{
	width: 90%;
	max-width: 1560px;
	height: 56.25rem;
	margin-left: auto;
}
.mv-view .mv-view-Img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mv-view .view-box{
	position: absolute;
	width: 90%;
	max-width: 42.5rem;
	top: calc(50% + 3.65rem);
	left: 3%;
	transform: translateY(-50%);
	z-index: 1000;
}
@media only screen and (max-width: 767px) {
	.mv-view{
		margin-top: 4rem;
	}
	.mv-view .mv-view-Img{
		height: 29.625rem;
	}
	.mv-view .view-box{
		top: 50%;
		left: 0;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.mv-view .mv-view-Img{
		height: 36.625rem;
	}
	.mv-view .view-box{
		max-width: 31.5rem;
		top: 50%;
	}
}
/*　　ABOUT US　　*/
.about-guide{
	padding: 5rem 0;
}
.about-guide .guide-ttl{
	margin-bottom: 3.5rem;
}
.about-guide .p-text{
	font-size: 1rem;
	font-weight: 500;
	line-height: 2.125;
	text-align: center;
}
.about-guide .block_btn{
	margin-top: 2.5rem;
}
@media only screen and (max-width: 767px) {
	.about-guide{
		padding: 3rem 0 3.25rem 0;
	}
	.about-guide .guide-ttl{
		margin-bottom: 2rem;
	}
	.about-guide .p-text{
		font-size: 0.875rem;
		text-align: left;
	}
	.about-guide .block_btn{
		margin-top: 1.75rem;
	}
}
/*　　SERVICE　　*/
.front-service{
	background: #F0F0F0;
	padding: 5.5rem 0;
}
.front-service::before,
.front-service::after{
	position: absolute;
	content: "";
}
.front-service::before{
	top: 0;
	left: 0;
	border-bottom: 9.75rem solid transparent;
	border-left: 28.75rem solid #F7F7F7;
}
.front-service::after{
	bottom: 0;
	right: 0;
	border-top: 9.75rem solid transparent;
	border-right: 28.75rem solid #F7F7F7;
}
.front-service .guide-ttl{
	margin-bottom: 3.5rem;
}
.front-service .text{
	font-size: 1rem;
	font-weight: 500;
	line-height: 2.125;
	text-align: center;
	margin-bottom: 4rem;
}
.front-service .service-list{
	column-gap: 1rem;
}
.front-service .service-list .service-items{
	position: relative;
	background: #FFFFFF;
	width: calc(25% - 0.75rem);
	text-align: center;
	border-radius: 0.5rem;
	padding: 1px 1.25rem 2rem 1.25rem;
}
.front-service .service-list .service-items .no span{
	position: relative;
	display: inline-block;
	font-family: "Poppins", sans-serif;
	width: 2.875rem;
	color: #FFFFFF;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 2.875rem;
	text-align: center;
	border-radius: 100%;
	top: -1.25rem;
}
.front-service .service-list .service-items:nth-child(1) .no span{
	background: #059D5A;
}
.front-service .service-list .service-items:nth-child(2) .no span{
	background: #E38E1A;
}
.front-service .service-list .service-items:nth-child(3) .no span{
	background: #F5BD02;
}
.front-service .service-list .service-items:nth-child(4) .no span{
	background: #76C619;
}
.front-service .service-list .service-items .icon2{
	position: absolute;
	width: 3.5rem;
	top: 1rem;
	left: 1rem;
}
.front-service .service-list .service-items .icon{
	text-align: center;
	margin-bottom: 0.5rem;
}
.front-service .service-list .service-items .icon img{
	width: 6rem;
}
.front-service .service-list .service-items h3{
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.3;
}
.front-service .service-list .service-items .p-text{
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.45;
}
.front-service .service-list .service-items .note{
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.45;
}
.front-service .block_btn{
	margin-top: 3rem;
}
@media only screen and (max-width: 767px) {
	.front-service{
		padding: 3rem 0 3.25rem 0;
	}
	.front-service::before{
		border-bottom: 4.875rem solid transparent;
		border-left: 14.375rem solid #F7F7F7;
	}
	.front-service::after{
		border-top: 4.875rem solid transparent;
		border-right: 14.375rem solid #F7F7F7;
	}
	.front-service .guide-ttl{
		margin-bottom: 2rem;
	}
	.front-service .text{
		font-size: 0.875rem;
		text-align: left;
		margin-bottom: 3rem;
	}
	.front-service .service-list{
		column-gap: 0;
		row-gap: 2rem;
	}
	.front-service .service-list .service-items{
		width: 100%;
		border-radius: 0.5rem;
		padding: 1px 1.25rem 2rem 1.25rem;
	}
	.front-service .service-list .service-items .no span{
		width: 2.875rem;
		line-height: 2.875rem;
		top: -1.25rem;
	}
	.front-service .service-list .service-items .icon2{
		top: 0.75rem;
		left: 0.75rem;
	}
	.front-service .service-list .service-items .icon{
		margin-bottom: 0.75rem;
	}
	.front-service .service-list .service-items .icon img{
		width: 4.25rem;
	}
	.front-service .service-list .service-items h3{
		font-size: 1.25rem;
	}
	.front-service .service-list .service-items .p-text{
		font-size: 0.875rem;
	}
	.front-service .service-list .service-items .note{
		font-size: 0.875rem;
	}
	.front-service .block_btn{
		margin-top: 2.25rem;
	}
}
/*　　選ばれ続ける理由　　*/
.chosen-guide{
	background: url(../img/top/chosen_bg.png) no-repeat center;
	background-size: cover;
	padding: 5.5rem 0 6rem 0;
}
.chosen-guide .chosen-box{
	background: #FFFFFF;
	max-width: 1000px;
	border: 4px solid #EAEAEA;
	border-radius: 1.25rem;
	padding: 4rem;
}
.chosen-guide .chosen-box .guide-ttl{
	margin-bottom: 3.5rem;
}
.chosen-guide .chosen-box .text{
	font-size: 1rem;
	font-weight: 500;
	line-height: 2.125;
	text-align: center;
}
@media only screen and (max-width: 767px) {
	.chosen-guide{
		background: url(../img/top/sp_chosen_bg.png) no-repeat center;
		background-size: cover;
		padding: 2.5rem 0;
	}
	.chosen-guide .chosen-box{
		width: calc(100% - 1.5rem);
		border: 2px solid #EAEAEA;
		border-radius: 0.625rem;
		padding: 1.75rem 1.5rem 2rem 1.5rem;
	}
	.chosen-guide .chosen-box .guide-ttl{
		margin-bottom: 2rem;
	}
	.chosen-guide .chosen-box .text{
		font-size: 0.875rem;
		text-align: left;
	}
}
/*　　よくあるご質問　　*/
.faq-guide{
	padding: 4.5rem 0 8.875rem 0;
}
.faq-guide .inner{
	max-width: 1000px;
}
.faq-guide .guide-ttl{
	margin-bottom: 3.5rem;
}
.faq-guide .text{
	font-size: 1rem;
	font-weight: 500;
	line-height: 2.125;
	text-align: center;
	margin-bottom: 2.5rem;
}
.faq-list .faq-items{
	background: #F8F8F8;
	padding: 2rem;
	margin-bottom: 1rem;
}
.faq-list .faq-items:last-child{
	margin-bottom: 0;
}
.faq-list .faq-items .question{
	border-bottom: 1px solid #E0E0E0;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.faq-list .faq-items .question dt,
.faq-list .faq-items .answer dt{
	width: 2.5rem;
	font-family: "Poppins", sans-serif;
	color: #FFFFFF;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 2.5rem;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	text-align: center;
}
.faq-list .faq-items .question dt{
	background: #059D5A;
}
.faq-list .faq-items .answer dt{
	background: #222222;
}
.faq-list .faq-items .question dd,
.faq-list .faq-items .answer dd{
	width: calc(100% - 2.5rem);
	padding-left: 1rem;
}
.faq-list .faq-items .question dd{
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	padding-top: 0.3rem;
}
.faq-list .faq-items .answer dd{
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	padding-top: 0.625rem;
}
@media only screen and (max-width: 767px) {
	.faq-guide{
		padding: 3rem 0 5.1875rem 0;
	}
	.faq-guide .guide-ttl{
		margin-bottom: 2rem;
	}
	.faq-guide .text{
		font-size: 0.875rem;
		text-align: left;
		margin-bottom: 1.5rem;
	}
	.faq-guide .faq-list{
		width: calc(100% + 3rem);
		margin: 0 -1.5rem;
	}
	.faq-list .faq-items{
		padding: 1rem 0.75rem;
		margin-bottom: 0.5rem;
	}
	.faq-list .faq-items .question{
		padding-bottom: 0.75rem;
		margin-bottom: 0.75rem;
	}
	.faq-list .faq-items .question dt,
	.faq-list .faq-items .answer dt{
		width: 1.75rem;
		font-size: 1.125rem;
		line-height: 1.75rem;
	}
	.faq-list .faq-items .question dd,
	.faq-list .faq-items .answer dd{
		width: calc(100% - 1.75rem);
		padding-left: 0.75rem;
	}
	.faq-list .faq-items .question dd{
		font-size: 1rem;
		padding-top: 0.25rem;
	}
	.faq-list .faq-items .answer dd{
		font-size: 0.875rem;
		padding-top: 0.25rem;
	}
}
/**
/* 下層ページ共通 CSS
----------------------------------------------- */
/*　　ページヘッダー　　*/
.page-view{
	position: relative;
	margin-top: 6rem;
}
.page-view .page-view-bgImg{
	position: relative;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	max-height: 100vh;
	height: 13.75rem;
}
.page-view .page-view-bgImg >img {
	visibility: hidden;
	width: 100%;
}
.page-view .page-view-img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.page-view .view-ttl{
	position: absolute;
	color: #FFFFFF;
	width: 94%;
	max-width: 1200px;
	top: 50%;
	right: 50%;
	transform: translate(50%, -50%);
	align-items: center;
	z-index: 9998;
}
.page-view .view-ttl .roma{
	font-family: "Poppins", sans-serif;
	font-size: 2.75rem;
	font-weight: 700;
	line-height: 1.45;
	text-transform: uppercase;
}
.page-view .view-ttl h1{
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.45;
	margin-left: 2rem;
}
@media only screen and (max-width: 767px) {
	.page-view{
		margin-top: 4rem;
	}
	.page-view .view-ttl .roma{
		width: 100%;
		font-size: 2rem;
	}
	.page-view .view-ttl h1{
		width: 100%;
		font-size: 1rem;
		margin-left: 0.25rem;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.page-view{
		margin-top: 5rem;
	}
}
/*　　ページトップ　　*/
.page-wrap .head-guide{
	padding: 3.5rem 0 6.25rem 0;
}
.head-guide .guide-ttl{
	margin-bottom: 4.5rem;
}
.head-guide .contentArea .p-text{
	font-size: 1rem;
	font-weight: 500;
	line-height: 2.125;
	text-align: center;
}
@media only screen and (max-width: 767px) {
	.page-wrap .head-guide{
		padding: 3rem 0 3.5rem 0;
	}
	.head-guide .guide-ttl{
		margin-bottom: 2.25rem;
	}
	.head-guide .contentArea .p-text{
		font-size: 0.875rem;
		line-height: 2;
		text-align: left;
	}
}
/**
/* 会社情報ページ CSS
----------------------------------------------- */
/*　　企業理念　　*/
.philosophy-guide{
	padding-bottom: 3rem;
}
.philosophy-guide .imageArea{
	height: 24rem;
}
.philosophy-guide .imageArea img{
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.philosophy-guide .philosophy-box{
	position: relative;
	background: #FFFFFF;
	width: 94%;
	max-width: 1000px;
	margin: -20rem auto 0 auto;
	padding: 4.5rem 3rem;
}
.philosophy-guide .contentArea h3{
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 2.5rem;
}
.philosophy-guide .contentArea p{
	font-size: 1rem;
	font-weight: 500;
	line-height: 2.125;
	text-align: center;
}
.philosophy-guide .contentArea p:not(:last-child){
	margin-bottom: 2rem;
}
@media only screen and (max-width: 767px) {
	.philosophy-guide{
		padding-bottom: 1.5rem;
	}
	.philosophy-guide .imageArea{
		height: 24rem;
	}
	.philosophy-guide .philosophy-box{
		margin: -22rem auto 0 auto;
		padding: 3rem 1.5rem 2rem 1.5rem;
	}
	.philosophy-guide .contentArea h3{
		font-size: 1.25rem;
		margin-bottom: 1.5rem;
	}
	.philosophy-guide .contentArea p{
		font-size: 0.875rem;
		line-height: 2;
		text-align: left;
	}
	.philosophy-guide .contentArea p:not(:last-child){
		margin-bottom: 1.25rem;
	}
}
/*　　会社概要　　*/
.company-guide{
	padding: 7rem 0 12.5rem 0;
}
.company-guide .guide-ttl{
	margin-bottom: 5.5rem;
}
.company-guide .company-box{
	background: #FFFFFF;
	border-top: 4px solid #049D5A;
	padding: 6.125rem 3rem 5.5rem 3rem;
}
.company-guide .company-tbl{
	max-width: 50rem;
	margin: 0 auto;
}
.company-guide .company-tbl th,
.company-guide .company-tbl td{
	border-bottom: 1px solid #D9D9D9;
	padding: 2rem 0;
}
.company-guide .company-tbl th{
	width: 13.75rem;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.56;
	letter-spacing: 0.06em;
}
.company-guide .company-tbl td{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.56;
	letter-spacing: 0.06em;
}
.company-guide .company-tbl td .link{
	position: relative;
	padding-left: 1.25rem;
}
.company-guide .company-tbl td .link::before{
	position: absolute;
	top: 0.4375rem;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 0.75rem;
	height: 0.375rem;
	border: 0.375rem solid transparent;
	border-left: 0.75rem solid #222222;
}
@media only screen and (max-width: 767px) {
	.company-guide{
		padding: 3rem 0 5.1875rem 0;
	}
	.company-guide .guide-ttl{
		margin-bottom: 3rem;
	}
	.company-guide .company-box{
		border-top: 3px solid #049D5A;
		padding: 1.125rem 1.5rem 2.5rem 1.5rem;
	}
	.company-guide .company-tbl th,
	.company-guide .company-tbl td{
		padding: 1.5rem 0;
	}
	.company-guide .company-tbl th{
		width: 7.75rem;
		font-size: 1rem;
	}
	.company-guide .company-tbl td{
		font-size: 0.875rem;
	}
	.company-guide .company-tbl td .link{
		padding-left: 1rem;
	}
	.company-guide .company-tbl td .link::before{
		top: 0.4375rem;
		width: 0.625rem;
		height: 0.35rem;
		border: 0.35rem solid transparent;
		border-left: 0.625rem solid #222222;
	}
}
/**
/* 事業内容ページ CSS
----------------------------------------------- */
/*　　提供サービス　　*/
.service-guide{
	padding: 7rem 0;
}
.service-guide .guide-ttl{
	margin-bottom: 5rem;
}
.service-guide .service-list .service-items{
	background: #FFFFFF;
	border-radius: 1rem;
	padding: 2.5rem;
	margin-bottom: 1.5rem;
}
.service-guide .service-list .service-items:last-child{
	margin-bottom: 0;
}
.service-guide .service-list .service-items .imageArea{
	width: 38%;
}
.service-guide .service-list .service-items .imageArea img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0.5rem;
}
.service-guide .service-list .service-items .contentArea{
	width: 62%;
	padding-left: 3rem;
}
.service-guide .service-list .service-items h3{
	position: relative;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	border-bottom: 1px solid #DEDEDE;
	padding-bottom: 1rem;
	margin-bottom: 1.75rem;
}
.service-guide .service-list .service-items h3:before{
	position: absolute;
	bottom: -1px;
	width: 6.125rem;
	height: 2px;
	display: block;
	content: "";
	background: #049D5A;
}
.service-guide .service-list .service-items .p-text{
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
}
.service-guide .service-list .service-items .list{
	margin-top: 1.5rem;
}
.service-guide .service-list .service-items .list li{
	position: relative;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.45;
	padding-left: 3.125rem;
}
.service-guide .service-list .service-items .list li + li{
	margin-top: 1rem;
}
.service-guide .service-list .service-items .list li::before{
	content: "";
	position: absolute;
	background: url(../img/icon/check_g.png) no-repeat center;
	background-size: contain;
	left: 0;
	top: 0.125rem;
	width: 1.625rem;
	height: 1.625rem;
}
@media only screen and (max-width: 767px) {
	.service-guide{
		padding: 3.5rem 0;
	}
	.service-guide .guide-ttl{
		margin-bottom: 2.5rem;
	}
	.service-guide .service-list .service-items{
		padding: 1.25rem 1.25rem 1.5rem 1.25rem;
		border-radius: 0.5rem;
		margin-bottom: 1.25rem;
	}
	.service-guide .service-list .service-items .imageArea{
		width: 100%;
		margin-bottom: 1.25rem;
	}
	.service-guide .service-list .service-items .contentArea{
		width: 100%;
		padding-left: 0;
	}
	.service-guide .service-list .service-items h3{
		font-size: 1.125rem;
		padding-bottom: 0.625rem;
		margin-bottom: 1.125rem;
	}
	.service-guide .service-list .service-items .p-text{
		font-size: 0.875rem;
	}
	.service-guide .service-list .service-items .list{
		margin-top: 1rem;
	}
	.service-guide .service-list .service-items .list li{
		font-size: 0.9375rem;
		padding-left: 2.125rem;
	}
	.service-guide .service-list .service-items .list li + li{
		margin-top: 0.625rem;
	}
	.service-guide .service-list .service-items .list li::before{
		width: 1.375rem;
		height: 1.375rem;
	}
}
/*　　サービス導入までの流れ　　*/
.flow-guide{
	padding: 6rem 0 12.375rem 0;
}
.flow-guide .guide-ttl{
	margin-bottom: 5.5rem;
}
.flow-guide .flow-list{
	position: relative;
	column-gap: 3rem;
}
.flow-guide .flow-list:after{
	position: absolute;
	width: 48.25rem;
	height: 3px;
	display: block;
	content: "";
	background: #BCD0C6;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.flow-guide .flow-list .flow-items{
	position: relative;
	background: #FFFFFF;
	width: calc(25% - 2.25rem);
	border: 1px solid #D3D3D3;
	border-radius: 0.5rem;
	z-index: 2;
	padding: 0 1.5rem 2rem 1.5rem;
}
.flow-guide .flow-list .flow-items .no{
	text-align: center;
	margin-bottom: 2rem;
}
.flow-guide .flow-list .flow-items .no span{
	display: inline-block;
	background: #059D5A;
	font-family: "Poppins", sans-serif;
	width: 4rem;
	color: #FFFFFF;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	border-radius: 0 0 0.5rem 0.5rem;
	padding: 3px 0 2px 0;
}
.flow-guide .flow-list .flow-items .icon{
	text-align: center;
	margin-bottom: 1rem;
}
.flow-guide .flow-list .flow-items .icon img{
	width: 7.3125rem;
}
.flow-guide .flow-list .flow-items h3{
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	margin-bottom: 1rem;
}
.flow-guide .flow-list .flow-items .p-text{
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.6;
}
@media only screen and (max-width: 767px) {
	.flow-guide{
		padding: 3.5rem 0 5.1875rem 0;
	}
	.flow-guide .guide-ttl{
		margin-bottom: 3.5rem;
	}
	.flow-guide .flow-list{
		column-gap: 0;
		row-gap: 2rem;
	}
	.flow-guide .flow-list:after{
		width: 2px;
		height: 80%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.flow-guide .flow-list .flow-items{
		width: 100%;
		padding: 0 1.25rem 1.5rem 1.25rem;
	}
	.flow-guide .flow-list .flow-items .no{
		margin-bottom: 0.625rem;
	}
	.flow-guide .flow-list .flow-items .icon{
		margin-bottom: 0;
	}
	.flow-guide .flow-list .flow-items .icon img{
		width: 6.3125rem;
	}
	.flow-guide .flow-list .flow-items h3{
		font-size: 1.125rem;
		margin-bottom: 1rem;
	}
	.flow-guide .flow-list .flow-items .p-text{
		font-size: 0.875rem;
	}
}
/**
/* お問い合わせページ CSS
----------------------------------------------- */
.contact-wrap .head-guide{
	padding: 3.5rem 0 5.75rem 0;
}
.contact-wrap .tel-box{
	max-width: 1000px;
	column-gap: 7rem;
	align-items: center;
	margin: 0 auto;
	border: 1px solid #049D5A;
	padding: 2rem;
}
.contact-wrap .tel-box .tel-items{
	position: relative;
	width: calc(50% - 3.5rem);
	padding: 1.75rem 0;
}
.contact-wrap .tel-box .tel-items:last-child::after{
	background: #CBD5D0;
	content: "";
	position: absolute;
	width: 1px;
	height: 100%;
	left: -4rem;
	top: 50%;
	transform: translateY(-50%);
}
.contact-wrap .tel-box .tel-items .ttl{
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}
.contact-wrap .tel-box .tel-items .tel-btn li a{
	font-family: "Poppins", sans-serif;
	color: #222222;
	font-size: 2.25rem;
	font-weight: 600;
	line-height: 1.25;
}
.contact-wrap .tel-box .tel-items .tel-btn li a span{
	margin-right: 0.5rem;
}
.contact-wrap .tel-box .tel-items .tel-btn li a span img{
	width: 1.5rem;
}
.contact-wrap .tel-box .tel-items .hours{
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0.1em;
	margin-top: 0.5rem;
}
.contact-guide{
	padding: 5.25rem 0 5.75rem 0;
}
.contact-guide .inner{
	max-width: 1000px;
}
.contact-guide .guide-ttl{
	margin-bottom: 4.5rem;
}
.contact-guide .p-text{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: 0.07em;
	text-align: center;
}
.contact-guide .p-note{
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: 0.07em;
	text-align: center;
	margin-top: 1rem;
}
.contact-guide .form-box{
	margin-top: 3.5rem;
}
.form-box table th,
.form-box table td{
	padding: 1rem 0;
}
.form-box table th{
	width: 20rem;
	vertical-align: top;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.35;
}
.form-box table th .ttl{
	padding: 1.25rem 0;
}
.form-box table th span{
	display: inline-block;
	color: #059D5A;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.25;
	margin-left: 1rem;
}
.form-box table td{
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.35;
	vertical-align: middle;
}
.form-box table td ul.flex{
	column-gap: 1.5rem;
}
.form-box table td ul.flex li{
	display: flex;
    align-items: center;
	width: calc(50% - 0.75rem);
}
.form-box table td ul.flex li span{
	margin-right: 1.25rem;
}
.form-box table td .note{
	font-size: 0.8125rem;
	font-weight: 400;
	line-height: 1.25;
	margin-top: 0.625rem;
}
.form-box table td label{
	display: inline-block;
	margin-right: 1rem;
}
.form-box .form-tbl dd .wpcf7-form-control-wrap{
	width: 100%;
}
input[type=checkbox],
input[type=radio]{
	margin: 0 .6rem 0 0;
}
input[type="date"],
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="url"],
textarea,
select{
	width: 100%;
	background: #FFFFFF;
	border: 1px solid #D3D3D3;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.25;
	border-radius: 0.25rem;
	padding: 1.125rem;
}
input[type="date"]::placeholder,
input[type="text"]::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
textarea::placeholder{
	color: #D9D9D9;
}
input[type="date"]:-ms-input-placeholder,
input[type="text"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="url"]:-ms-input-placeholder,
textarea:-ms-input-placeholder{
	color: #D9D9D9;
}
input[type="date"]::-ms-input-placeholder,
input[type="text"]::-ms-input-placeholder,
input[type="tel"]::-ms-input-placeholder,
input[type="email"]::-ms-input-placeholder,
input[type="url"]::-ms-input-placeholder,
textarea::-ms-input-placeholder{
	color: #D9D9D9;
}
textarea{
	height: 10.75rem;
}
input[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 1.5rem;
	height: 1.5rem;
	border: 1px solid #b7b7b7;
	border-radius: 50%;
	outline: none;
	cursor: pointer;
	position: relative;
	padding: 0;
	top: 0.35rem;
}
input[type="radio"]:checked::before {
	content: "";
	display: block;
	width: 0.875rem;
	height: 0.875rem;
	background: #059D5A;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
input[type='checkbox']{
	width: 1.5rem;
	height: 1.5rem;
	margin: auto;
	position: relative;
	top: 0.375rem;
	left: 0;
	margin-right: 0.625rem;
}
.wpcf7-list-item {
	display: inline-block;
	line-height: 1.65;
	margin: 0;
}
.wpcf7-spinner{
	display: none;
}
.form-box .acceptance-text{
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
	text-align: center;
	margin-top: 2.5rem;
}
.form-box .acceptance{
	border: 1px solid #D3D3D3 !important;
}
.form-box .acceptance-text .wpcf7-list-item-label{
	margin-left: 1rem;
}
.form-captcha{
	margin-top: 2.5rem;
}
.submit_btn{
	text-align: center;
	margin-top: 1.5rem;
}
.submit_btn li{
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 18.5625rem;
}
.submit_btn li::after{
	content: "";
	position: absolute;
	background: url(../img/icon/arrow_w.png) no-repeat center;
	background-size: cover;
	width: 1.5rem;
	height: 1.5rem;
	right: 1rem;
	top: 1rem;
}
input[type="submit"] {
	position: relative;
	background: #059D5A;
	background: linear-gradient(90deg,rgba(5, 157, 90, 1) 0%, rgba(19, 175, 145, 1) 100%);
	border: none;
	display: block;
	width: 100%;
	color: #FFFFFF;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	cursor: pointer;
	padding: 1rem 2rem;
	box-shadow: 0 3px 6px rgb(0, 0, 0, 0.16);
}
@media only screen and (max-width: 767px) {
	.contact-wrap .head-guide{
		padding: 3rem 0 3.5rem 0;
	}
	.contact-wrap .tel-box{
		column-gap: 0;
		padding: 0;
	}
	.contact-wrap .tel-box .tel-items{
		width: 100%;
		padding: 0;
	}
	.contact-wrap .tel-box .tel-items:last-child{
		padding: 1.25rem 1.75rem;
	}
	.contact-wrap .tel-box .tel-items:last-child::after{
		left: -4rem;
	}
	.contact-wrap .tel-box .tel-items .ttl{
		background: #049D5A;
		color: #FFFFFF;
		font-size: 1rem;
		line-height: 1.35;
		padding: 0.625rem;
	}
	.contact-wrap .tel-box .tel-items .tel-btn li a{
		display: block;
		font-size: 1.5rem;
		text-align: center;
	}
	.contact-wrap .tel-box .tel-items .tel-btn li a span img{
		width: 1.125rem;
		margin-top: -0.25rem;
	}
	.contact-wrap .tel-box .tel-items .hours{
		font-size: 0.725rem;
		text-align: center;
		margin-top: 0.375rem;
	}
	.contact-guide{
		padding: 3.5rem 0 3.75rem 0;
	}
	.contact-guide .guide-ttl{
		margin-bottom: 2.5rem;
	}
	.contact-guide .p-text{
		font-size: 0.9375rem;
		text-align: left;
	}
	.contact-guide .p-note{
		font-size: 0.75rem;
		text-align: left;
		margin-top: 0.5rem;
	}
	.contact-guide .form-box{
		margin-top: 1.5rem;
	}
	.form-box table th,
	.form-box table td{
		display: block;
		padding: 1.25rem 0 0 0;
	}
	.form-box table th{
		width: 100%;
		font-size: 0.9375rem;
	}
	.form-box table th .ttl{
		padding: 0;
	}
	.form-box table td{
		width: 100%;
		font-size: 0.875rem;
		padding: 0.625rem 0;
	}
	.form-box table td ul.flex{
		column-gap: 0.5rem;
	}
	.form-box table td ul.flex li{
		width: calc(50% - 0.25rem);
	}
	.form-box table td ul.flex li span{
		margin-right: 0.5rem;
	}
	.form-box table td .note{
		font-size: 0.75rem;
		margin-top: 0.375rem;
	}
	.form-box table td label{
		margin-right: 1rem;
	}
	input[type="date"],
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	textarea,
	select{
		font-size: 0.875rem;
		padding: 1rem;
	}
	textarea{
		height: 10.75rem;
	}
	input[type="radio"] {
		width: 1.25rem;
		height: 1.25rem;
		top: 0.35rem;
	}
	input[type="radio"]:checked::before {
		width: 0.875rem;
		height: 0.875rem;
	}
	input[type='checkbox']{
		width: 1.5rem;
		height: 1.5rem;
		top: 0.375rem;
		margin-right: 0.625rem;
	}
	.form-box .acceptance-text{
		font-size: 0.75rem;
		margin-top: 1rem;
	}
	.form-box .acceptance-text .wpcf7-list-item-label{
		margin-left: 0.5rem;
	}
	.form-captcha{
		margin-top: 2rem;
	}
	.submit_btn{
		margin-top: 1.5rem;
	}
	.submit_btn li{
		max-width: 18.5625rem;
	}
	.submit_btn li::after{
		width: 1.15625rem;
		height: 1.15625rem;
	}
	input[type="submit"] {
		font-size: 0.875rem;
	}
}
/*　　プライバシーポリシー　　*/
.privacy-guide{
	padding: 4.5rem 0 12.375rem 0;
}
.privacy-guide h3{
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.03em;
	text-align: center;
	margin-bottom: 2rem;
}
.privacy-guide .p-text{
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.73;
	letter-spacing: 0.03em;
	margin-bottom: 1.875rem;
}
.privacy-guide dl:not(:last-child){
	margin-bottom: 1.875rem;
}
.privacy-guide dl dt{
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: 0.03em;
	margin-bottom: 0.625rem;
}
.privacy-guide dl dd{
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.73;
	letter-spacing: 0.03em;
}
@media only screen and (max-width: 767px) {
	.privacy-guide{
		padding: 3rem 0 5.1875rem 0;
	}
	.privacy-guide h3{
		font-size: 1rem;
		margin-bottom: 1rem;
	}
	.privacy-guide .p-text{
		font-size: 0.875rem;
		margin-bottom: 1.5rem;
	}
	.privacy-guide dl:not(:last-child){
		margin-bottom: 1.125rem;
	}
	.privacy-guide dl dt{
		font-size: 0.9375rem;
		margin-bottom: 0.625rem;
	}
	.privacy-guide dl dd{
		font-size: 0.875rem;
	}
}
/**
/* 共通ブロック CSS
----------------------------------------------- */
/*　　お問い合わせナビ　　*/
.contens-contact-guide{
	background: url(../img/contact_bg.jpg) no-repeat center;
	background-size: cover;
	padding: 1rem 0 2.5rem 0;
}
.contens-contact-guide .bubble{
	margin-bottom: 2.75rem;
	margin-top: -3.25rem;
}
.contens-contact-guide .bubble p{
	position: relative;
	display: inline-block;
	background: #F5BD02;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.54;
	border-radius: 0.5rem;
	padding: 1.25rem 4.375rem;
}
.contens-contact-guide .bubble p::after{
	content: '';
	width: 1.25rem;
	height: 1.25rem;
	border: 0.75rem solid transparent;
	border-top: 1.25rem solid #F5BD02;
	position: absolute;
	bottom: -1.875rem;
	right: 50%;
	transform: translateX(50%);
}
.contens-contact-guide .guide-ttl{
	margin-bottom: 3rem;
}
.contens-contact-guide .p-text{
	color: #ffffff;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.1em;
	margin-bottom: 2rem;
}
.contens-contact-guide .contact-grid{
	column-gap: 2.5rem;
}
.contens-contact-guide .contact-grid .contact-items{
	position: relative;
	background: #FFFFFF;
	width: calc(50% - 1.25rem);
	text-align: center;
	border-radius: 0.5rem;
	padding: 2rem;
}
.contens-contact-guide .contact-items h3{
	position: relative;
	display: inline-block;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.35;
	margin-bottom: 1rem;
}
.contens-contact-guide .contact-items.tel h3{
	margin-bottom: 0.5rem;
}
.contens-contact-guide .contact-items h3::before,
.contens-contact-guide .contact-items h3::after{
	content: "●";
	position: absolute;
	font-size: 0.5rem;
	font-weight: 700;
	top: 50%;
	transform: translateY(-50%);
}
.contens-contact-guide .contact-items h3::before{
	left: -1.5rem;
}
.contens-contact-guide .contact-items h3::after{
	right: -1.5rem;
}
.contens-contact-guide .contact-items.tel h3::before,
.contens-contact-guide .contact-items.tel h3::after{
	color: #E38E1A;
}
.contens-contact-guide .contact-items.contact h3::before,
.contens-contact-guide .contact-items.contact h3::after{
	color: #059D5A;
}
.contens-contact-guide .contact-items .tel-btn li span{
	display: inline-block;
	width: 1.5rem;
	margin-right: 0.5rem;
}
.contens-contact-guide .contact-items .tel-btn li span img{
	vertical-align: baseline;
}
.contens-contact-guide .contact-items .tel-btn li a{
	font-family: "Poppins", sans-serif;
	color: #222222;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.45;
}
.contens-contact-guide .contact-items .hours{
	color: #767676;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.25;
	letter-spacing: 0.1em;
}
.contens-contact-guide .contact-btn li{
	display: inline-block;
	width: 100%;
	max-width: 18.5625rem;
}
.contens-contact-guide .contact-items .contact-btn li a{
	position: relative;
	background: #059D5A;
	background: linear-gradient(90deg,rgba(5, 157, 90, 1) 0%, rgba(19, 175, 145, 1) 100%);
	display: block;
	color: #FFFFFF;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	padding: 1rem 2rem;
	box-shadow: 0 3px 6px rgb(0, 0, 0, 0.16);
}
.contens-contact-guide .contact-items .contact-btn li a::after{
	content: "";
	position: absolute;
	background: url(../img/icon/arrow_w.png) no-repeat center;
	background-size: cover;
	width: 1.5rem;
	height: 1.5rem;
	right: 1rem;
	top: 1rem;
}
@media only screen and (max-width: 767px) {
	.contens-contact-guide{
		background: url(../img/sp_contact_bg.jpg) no-repeat center;
		background-size: cover;
		padding: 1rem 0 2.5rem 0;
	}
	.contens-contact-guide .bubble{
		margin-bottom: 1.75rem;
		margin-top: -3.25rem;
	}
	.contens-contact-guide .bubble p{
		font-size: 1.0625rem;
		line-height: 1.176;
		border-radius: 0.25rem;
		padding: 0.5rem 3.125rem;
	}
	.contens-contact-guide .bubble p::after{
		width: 0.875rem;
		height: 1rem;
		border: 0.5rem solid transparent;
		border-top: 1rem solid #F5BD02;
		bottom: -1.125rem;
	}
	.contens-contact-guide .guide-ttl{
		margin-bottom: 1.5rem;
	}
	.contens-contact-guide .p-text{
		font-size: 0.875rem;
		letter-spacing: 0;
		margin-bottom: 1.5rem;
	}
	.contens-contact-guide .contact-grid{
		column-gap: 0;
		row-gap: 0.75rem;
	}
	.contens-contact-guide .contact-grid .contact-items{
		width: 100%;
		border-radius: 0;
		padding: 1.25rem 1rem 1rem 1rem;
	}
	.contens-contact-guide .contact-items.tel{
		padding: 0;
	}
	.contens-contact-guide .contact-items h3{
		font-weight: 700;
		margin-bottom: 0.75rem;
	}
	.contens-contact-guide .contact-items.tel h3{
		display: none;
	}
	.contens-contact-guide .contact-items h3::before,
	.contens-contact-guide .contact-items h3::after{
		content: none;
	}
	.contens-contact-guide .contact-items .tel-btn li span{
		width: 1.5rem;
		line-height: 0;
		margin-right: 0.75rem;
	}
	.contens-contact-guide .contact-items .tel-btn li a{
		position: relative;
		display: flex;
		align-items: center;
		-webkit-justify-content: center;
		justify-content: center;
		font-size: 1rem;
		padding: 1.25rem 0;
	}
	.contens-contact-guide .contact-items .tel-btn li a::after{
		content: "";
		position: absolute;
		background: url(../img/icon/arrow_orange.png) no-repeat center;
		background-size: cover;
		width: 1.15625rem;
		height: 1.15625rem;
		right: 2rem;
		top: 1.375rem;
	}
	.contens-contact-guide .contact-items .hours{
		background: #F0F0F0;
		color: #222222;
		font-size: 0.875rem;
		font-weight: 500;
		padding: 0.5rem;
	}
	.contens-contact-guide .contact-items .icon{
		margin-bottom: 0.5rem;
	}
	.contens-contact-guide .contact-items .icon img{
		width: 1.375rem;
	}
	.contens-contact-guide .contact-btn li{
		max-width: 16.5rem;
	}
	.contens-contact-guide .contact-items .contact-btn li a{
		font-size: 0.875rem;
		padding: 1rem 2rem;
	}
	.contens-contact-guide .contact-items .contact-btn li a::after{
		width: 1.15625rem;
		height: 1.15625rem;
		right: 1rem;
		top: 1rem;
	}
}
/**
/* エラー CSS
----------------------------------------------- */
.error-guide{
	padding: 3.5rem 0 8.875rem 0;
}
.error-guide .entry p{
	text-align: center;
}
.error-guide .entry .error_url{
	padding: 3rem 0;
}
.error-guide .entry .block_btn{
	margin-top: 4rem;
}
@media only screen and (max-width: 767px) {
	.error-guide{
		padding: 3.5rem 0 5.1875rem 0;
	}
	.error-guide .entry .error_url{
		padding: 1.5rem 0;
	}
	.error-guide .entry .block_btn{
		margin-top: 2rem;
	}
}
