@charset "utf-8";
/**
/* トップページ CSS
----------------------------------------------- */
/*　　メッセージ　　*/
.frontWrap .message-guide{
	padding: 67px 0 80px 0;
}
.frontWrap .message-guide .messageArea h2{
	position: relative;
	color: #151212;
	font-size: 37px;
	font-weight: 700;
	line-height: 1.4;
	padding: 0.5em 1em;
	margin-bottom: 30px;
}
.frontWrap .message-guide .messageArea h2:before,
.frontWrap .message-guide .messageArea h2:after {
	position: absolute;
	content: '';
	width: 39px;
	height: 47px;
}
.frontWrap .message-guide .messageArea h2:after {
	top: 0;
	left: 0;
	border-top: 10px solid #d9d9d9;
	border-left: 10px solid #d9d9d9;
}
.frontWrap .message-guide .messageArea h2:before {
	right: 0;
	bottom: 0;
	border-right: 10px solid #d9d9d9;
	border-bottom: 10px solid #d9d9d9;
}
.frontWrap .message-guide .messageArea p{
	color: #151212;
	font-size: 23px;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px) {
	.frontWrap .message-guide{
		padding: 10% 0 15% 0;
	}
	.frontWrap .message-guide .messageArea h2{
		font-size: 5vw;
		padding: 0.5em 1em;
		margin-bottom: 8%;
	}
	.frontWrap .message-guide .messageArea h2:before,
	.frontWrap .message-guide .messageArea h2:after {
		width: 6vw;
		height: 7vw;
	}
	.frontWrap .message-guide .messageArea h2:after {
		border-top: 5px solid #d9d9d9;
		border-left: 5px solid #d9d9d9;
	}
	.frontWrap .message-guide .messageArea h2:before {
		border-right: 5px solid #d9d9d9;
		border-bottom: 5px solid #d9d9d9;
	}
	.frontWrap .message-guide .messageArea p{
		font-size: 3.6vw;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.frontWrap .message-guide{
		padding: 45px 0 60px 0;
	}
	.frontWrap .message-guide .messageArea h2{
		font-size: 26px;
		padding: 0.5em 1em;
		margin-bottom: 20px;
	}
	.frontWrap .message-guide .messageArea h2:before,
	.frontWrap .message-guide .messageArea h2:after {
		width: 29px;
		height: 32px;
	}
	.frontWrap .message-guide .messageArea h2:after {
		border-top: 6px solid #d9d9d9;
		border-left: 6px solid #d9d9d9;
	}
	.frontWrap .message-guide .messageArea h2:before {
		border-right: 6px solid #d9d9d9;
		border-bottom: 6px solid #d9d9d9;
	}
	.frontWrap .message-guide .messageArea p{
		font-size: 18px;
	}
}

/*　　事業内容　　*/
.frontWrap .service-guide{
	position: relative;
	padding: 67px 0 76px 0;
}
.frontWrap .service-guide:before,
.frontWrap .service-guide:after{
	position: absolute;
	content:'';
	display: block;
}
.frontWrap .service-guide:before{
	width: 98%;
	max-width: 1620px;
	height: 100%;
	right: 0;
	top: 0;
	bottom: 0;
	background: #f5f5f5;
	border-radius: 20px 0px 0px 20px;
	z-index: -1;
}
.frontWrap .service-guide:after{
	width: 25%;
	max-width: 462px;
	height: 100%;
	left: 0;
	top: -87px;
	background: url(../image/service-bg.png) center center no-repeat;
	background-size: cover;
	border-radius: 0px 13px 13px 0px;
	z-index: -2;
}
.frontWrap .service-guide .inner{
	padding-left: 2%;
}
.frontWrap .service-guide .ttlArea{
	margin-bottom: 40px;
}
.frontWrap .service-guide .service-list .service-items{
	background: #ffffff;
	width: 32%;
	display: flex;
	align-items: center;
	border-radius: 13px;
	padding: 0 30px;
}
.frontWrap .service-guide .service-list .service-items a{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.frontWrap .service-guide .service-list .service-items .imgArea{
	height: 176px;
	display: flex;
	align-items: center;
}
.frontWrap .service-guide .service-list .service-items p{
	position: relative;
	width: 100%;
	border-top: 1px solid #e5e5e5;
	color: #000000;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: auto;
	padding: 30px 0;
}
.frontWrap .service-guide .service-list .service-items p::after{
	font-family: "Font Awesome 5 Free";
	position: absolute;
	content: "\f061";
	display: block;
	color: #13a8b1;
	font-size: 14px;
	font-weight: 900;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.frontWrap .service-guide .block_btn{
	margin-top: 64px;
}
@media only screen and (max-width: 767px) {
	.frontWrap .service-guide{
		padding: 12% 0 10% 0;
	}
	.frontWrap .service-guide:after{
		width: 50%;
		top: -3%;
	}
	.frontWrap .service-guide .ttlArea{
		text-align: center;
		margin-bottom: 8%;
	}
	.frontWrap .service-guide .service-list .service-items{
		width: 100%;
		padding: 0 5%;
		margin-bottom: 5%;
	}
	.frontWrap .service-guide .service-list .service-items a{
		width: 100%;
	}
	.frontWrap .service-guide .service-list .service-items .imgArea{
		height: 30vw;
	}
	.frontWrap .service-guide .service-list .service-items p{
		font-size: 3.6vw;
		padding: 8% 0;
	}
	.frontWrap .service-guide .service-list .service-items p::after{
		font-size: 3.4vw;
	}
	.frontWrap .service-guide .block_btn{
		margin-top: 10%;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.frontWrap .service-guide{
		padding: 45px 0 55px 0;
	}
	.frontWrap .service-guide:after{
		width: 30%;
		top: -40px;
	}
	.frontWrap .service-guide .ttlArea{
		margin-bottom: 30px;
	}
	.frontWrap .service-guide .service-list .service-items{
		padding: 0 20px;
	}
	.frontWrap .service-guide .service-list .service-items .imgArea{
		height: 150px;
	}
	.frontWrap .service-guide .service-list .service-items p{
		font-size: 14px;
		padding: 20px 0;
	}
	.frontWrap .service-guide .service-list .service-items p::after{
		font-size: 12px;
	}
	.frontWrap .service-guide .block_btn{
		margin-top: 40px;
	}
}
/*　　お知らせ　　*/
.frontWrap .news-guide{
	padding: 74px 0 60px 0;
}
.frontWrap .news-guide .inner{
	align-items: center;
}
.frontWrap .news-guide .ttlArea{
	width: 30%;
}
.frontWrap .news-guide .post-list{
	width: 68%;
}
.frontWrap .news-guide .block_btn{
	margin-top: 64px;
}
@media only screen and (max-width: 767px) {
	.frontWrap .news-guide{
		padding: 12% 0 10% 0;
	}
	.frontWrap .news-guide .ttlArea{
		width: 100%;
		text-align: center;
		margin-bottom: 8%;
	}
	.frontWrap .news-guide .post-list{
		width: 100%;
	}
	.frontWrap .news-guide .block_btn{
		margin-top: 10%;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.frontWrap .news-guide{
		padding: 60px 0 50px 0;
	}
	.frontWrap .news-guide .ttlArea{
		width: 25%;
	}
	.frontWrap .news-guide .post-list{
		width: 73%;
	}
	.frontWrap .news-guide .block_btn{
		margin-top: 40px;
	}
}
/**
/* 事業内容 CSS
----------------------------------------------- */
.service-guide .messageArea{
	margin-bottom: 80px;
}
.service-guide .messageArea p{
	font-size: 18px;
	line-height: 2.2;
	letter-spacing: 0.05em;
	text-align: center;
}
.serviceWrap .service-list .service-items{
	margin-bottom: 80px;
}
.serviceWrap .service-list .service-items:last-child{
	margin-bottom: 0;
}
.serviceWrap .service-list .service-items h2{
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: 30px;
}
.serviceWrap .service-list .service-items h2:first-letter{
	color: #13a8b1;
	font-size: 30px;
}
.serviceWrap .service-list .service-items .imgArea{
	text-align: center;
	margin-bottom: 30px;
}
.serviceWrap .service-list .service-items .comment p{
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.05em;
	text-align: center;
}
.serviceWrap .service-list .service-items .block_btn{
	margin-top: 40px;
}
@media only screen and (max-width: 767px) {
	.service-guide .messageArea{
		margin-bottom: 10%;
	}
	.service-guide .messageArea p{
		font-size: 3.8vw;
	}
	.serviceWrap .service-list .service-items{
		margin-bottom: 10%;
	}
	.serviceWrap .service-list .service-items h2{
		font-size: 4.6vw;
		margin-bottom: 5%;
	}
	.serviceWrap .service-list .service-items h2:first-letter{
		font-size: 5vw;
	}
	.serviceWrap .service-list .service-items .imgArea{
		margin-bottom: 5%;
	}
	.serviceWrap .service-list .service-items .imgArea img{
		width: 60%;
	}
	.serviceWrap .service-list .service-items .comment p{
		font-size: 3.6vw;
	}
	.serviceWrap .service-list .service-items .block_btn{
		margin-top: 5%;
	}
}
@media only screen and (min-width: 736px) and (max-width: 1024px){
	.service-guide .messageArea{
		margin-bottom: 60px;
	}
	.service-guide .messageArea p{
		font-size: 16px;
	}
	.serviceWrap .service-list .service-items{
		margin-bottom: 60px;
	}
	.serviceWrap .service-list .service-items h2{
		font-size: 22px;
		margin-bottom: 20px;
	}
	.serviceWrap .service-list .service-items h2:first-letter{
		font-size: 26px;
	}
	.serviceWrap .service-list .service-items .imgArea{
		margin-bottom: 20px;
	}
	.serviceWrap .service-list .service-items .comment p{
		font-size: 14px;
	}
	.serviceWrap .service-list .service-items .block_btn{
		margin-top: 30px;
	}
}
/**
/*  お知らせ CSS
----------------------------------------------- */
.post-list .post-items{
	border-bottom: 1px solid #e7e7e7;
	padding-bottom: 20px;
	margin-bottom: 30px;
}
.post-list .post-items:last-child{
	margin-bottom: 0;
}
.post-list .post-items dt{
	font-family: 'Alata', sans-serif;
	color: #b1b1b1;
	font-size: 16px;
	font-weight: 400;
    letter-spacing: 0.1em;
    margin-bottom: 5px;
}
.post-list .post-items.flex dt{
	width: 170px;
	margin-bottom: 0;
}
.post-list .post-items.flex dd{
	width: calc(100% - 170px);
}
.post-list .post-items dd a{
	display: block;
	color: #000000;
	font-size: 16px;
	font-weight: 500;
    letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px) {
	.post-list .post-items{
		padding-bottom: 5%;
		margin-bottom: 8%;
	}
	.post-list .post-items dt{
		font-size: 3.6vw;
		margin-bottom: 2%;
	}
	.post-list .post-items.flex dt{
		width: 100%;
		margin-bottom: 0;
	}
	.post-list .post-items.flex dd{
		width: 100%;
	}
	.post-list .post-items dd a{
		font-size: 3.6vw;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.post-list .post-items{
		padding-bottom: 15px;
		margin-bottom: 20px;
	}
	.post-list .post-items dt{
		font-size: 14px;
		margin-bottom: 5px;
	}
	.post-list .post-items.flex dt{
		width: 140px;
		margin-bottom: 0;
	}
	.post-list .post-items.flex dd{
		width: calc(100% - 140px);
	}
	.post-list .post-items dd a{
		font-size: 14px;
	}
}
/**
/* 投稿詳細 CSS
----------------------------------------------- */
.single-guide .entry-header{
	margin-bottom: 40px;
}
.single-guide .entry-header .h2_ttl{
	font-size: 28px;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 20px;
}
.single-guide .entry-header .entry-deta{
	font-family: 'Alata', sans-serif;
	color: #b1b1b1;
	font-size: 16px;
	font-weight: 400;
    letter-spacing: 0.1em;
	text-align: right;
}
.single-guide .entry-body h2{
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: 40px;
}
.single-guide .entry-body h2:first-letter{
	color: #13a8b1;
	font-size: 32px;
}
.single-guide .entry-body h3{
	font-size: 24px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}
.single-guide .entry-body h3:first-letter{
	color: #13a8b1;
	font-size: 30px;
}
.single-guide .entry-body h4{
	border-left: 5px solid #13a8b1;
	font-size: 22px;
	line-height: 1.4;
	padding-left: 12px;
	margin-bottom: 20px;
}
.single-guide .entry-body p{
	font-size: 16px;
	line-height: 2;
	margin-bottom: 40px;
}
.single-guide .entry-body ol{
	list-style: decimal;
	margin-left: 20px;
	margin-bottom: 20px;
}
.single-guide .entry-body ul{
	list-style: disc;
	margin-left: 20px;
	margin-bottom: 20px;
}
.single-guide .entry-body ol li,
.single-guide .entry-body ul li{
	font-size: 16px;
	line-height: 2;
}
.single-guide .entry-body figcaption {
	font-size: 90%;
	color: #888888;
}
.alignleft {
	display: inline;
	float: left;
}
.alignright {
	display: inline;
	float: right;
}
.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}
blockquote.alignleft,
.wp-caption.alignleft,
img.alignleft {
	margin: 0em 1em 1em 0em;
}
blockquote.alignright,
.wp-caption.alignright,
img.alignright {
	margin: 0em 0em 1em 1em;
}
blockquote.aligncenter,
.wp-caption.aligncenter,
img.aligncenter {
	clear: both;
}
.single-guide .block_btn{
	margin-top: 80px;
}
@media only screen and (max-width: 767px) {
	.single-guide .entry-header{
		margin-bottom: 8%;
	}
	.single-guide .entry-header .h2_ttl{
		font-size: 4.8vw;
		margin-bottom: 3%;
	}
	.single-guide .entry-header .entry-deta{
		font-size: 3.6vw;
	}
	.single-guide .entry-body h2{
		font-size: 4.6vw;
		margin-bottom: 5%;
	}
	.single-guide .entry-body h2:first-letter{
		font-size: 5.2vw;
	}
	.single-guide .entry-body h3{
		font-size: 4.4vw;
		margin-bottom: 3%;
	}
	.single-guide .entry-body h3:first-letter{
		font-size: 5vw;
	}
	.single-guide .entry-body h4{
		border-left: 4px solid #13a8b1;
		font-size: 4.2vw;
		padding-left: 8px;
		margin-bottom: 3%;
	}
	.single-guide .entry-body p{
		font-size: 3.6vw;
		margin-bottom: 5%;
	}
	.single-guide .entry-body ol{
		margin-bottom: 3%;
	}
	.single-guide .entry-body ul{
		margin-bottom: 3%;
	}
	.single-guide .entry-body ol li,
	.single-guide .entry-body ul li{
		font-size: 3.6vw;
	}
	.single-guide .block_btn{
		margin-top: 10%;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.single-guide .entry-header{
		margin-bottom: 30px;
	}
	.single-guide .entry-header .h2_ttl{
		font-size: 26px;
		margin-bottom: 20px;
	}
	.single-guide .entry-header .entry-deta{
		font-size: 16px;
	}
	.single-guide .entry-body h2{
		font-size: 22px;
		margin-bottom: 20px;
	}
	.single-guide .entry-body h2:first-letter{
		font-size: 28px;
	}
	.single-guide .entry-body h3{
		font-size: 20px;
		margin-bottom: 10px;
	}
	.single-guide .entry-body h3:first-letter{
		font-size: 26px;
	}
	.single-guide .entry-body h4{
		border-left: 5px solid #13a8b1;
		font-size: 18px;
		padding-left: 10px;
		margin-bottom: 10px;
	}
	.single-guide .entry-body p{
		font-size: 14px;
		margin-bottom: 30px;
	}
	.single-guide .entry-body ol{
		margin-bottom: 20px;
	}
	.single-guide .entry-body ul{
		margin-bottom: 10px;
	}
	.single-guide .entry-body ol li,
	.single-guide .entry-body ul li{
		font-size: 14px;
	}
	.single-guide .block_btn{
		margin-top: 60px;
	}
}
/**
/*  採用 CSS
----------------------------------------------- */
.recruit-guide .messageArea{
	text-align: center;
	margin-bottom: 80px;
}
.recruit-guide .messageArea h3{
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}
.recruit-guide .messageArea p{
	font-size: 18px;
	line-height: 2.2;
	letter-spacing: 0.05em;
}
.recruit-guide .recruit-grid .contentArea{
	text-align: center;
	margin-bottom: 80px;
}
.recruit-guide .recruit-grid .contentArea h2{
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}
.recruit-guide .recruit-grid .contentArea h2:first-letter{
	color: #13a8b1;
	font-size: 30px;
}
.recruit-guide .recruit-grid .contentArea p{
	font-size: 18px;
	line-height: 2.2;
	letter-spacing: 0.05em;
}
.recruit-guide .job-description h2{
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
}
.recruit-guide .job-description h2:first-letter{
	color: #13a8b1;
	font-size: 30px;
}
.recruit-guide .block_btn{
	margin-top: 60px;
}
.recruit-guide .block_btn li{
	max-width: 480px;
}
.recruit-guide .block_btn .btn{
	font-size: 16px;
	line-height: 3;
	padding-right: 10px;
}
.recruit-guide .block_btn .btn::after{
	font-family: "Font Awesome 5 Free";
	position: absolute;
	content: "\f061";
	display: block;
	font-size: 14px;
	font-weight: 900;
	top: calc(50% - 19px);
	right: 20px;
}
@media only screen and (max-width: 767px) {
	.recruit-guide .messageArea{
		margin-bottom: 10%;
	}
	.recruit-guide .messageArea h3{
		font-size: 4.6vw;
		margin-bottom: 5%;
	}
	.recruit-guide .messageArea p{
		font-size: 3.8vw;
	}
	.recruit-guide .recruit-grid .contentArea{
		margin-bottom: 10%;
	}
	.recruit-guide .recruit-grid .contentArea h2{
		font-size: 4.6vw;
		margin-bottom: 3%;
	}
	.recruit-guide .recruit-grid .contentArea h2:first-letter{
		font-size: 5vw;
	}
	.recruit-guide .recruit-grid .contentArea p{
		font-size: 3.8vw;
	}
	.recruit-guide .job-description h2{
		font-size: 4.6vw;
		margin-bottom: 3%;
	}
	.recruit-guide .job-description h2:first-letter{
		font-size: 5vw;
	}
	.recruit-guide .block_btn{
		margin-top: 8%;
	}
	.recruit-guide .block_btn li{
		max-width: 100%;
	}
	.recruit-guide .block_btn .btn{
		font-size: 3.6vw;
		padding-right: 3%;
	}
	.recruit-guide .block_btn .btn::after{
		font-size: 3.4vw;
		top: calc(50% - 5vw);
		right: 2%;
	}
}
@media only screen and (min-width: 736px) and (max-width: 1024px){
	.recruit-guide .messageArea{
		margin-bottom: 60px;
	}
	.recruit-guide .messageArea h3{
		font-size: 22px;
		margin-bottom: 20px;
	}
	.recruit-guide .messageArea p{
		font-size: 16px;
	}
	.recruit-guide .recruit-grid .contentArea{
		margin-bottom: 60px;
	}
	.recruit-guide .recruit-grid .contentArea h2{
		font-size: 22px;
		margin-bottom: 20px;
	}
	.recruit-guide .recruit-grid .contentArea h2:first-letter{
		font-size: 26px;
	}
	.recruit-guide .recruit-grid .contentArea p{
		font-size: 16px;
	}
	.recruit-guide .job-description h2{
		font-size: 22px;
		margin-bottom: 10px;
	}
	.recruit-guide .job-description h2:first-letter{
		font-size: 26px;
	}
	.recruit-guide .block_btn{
		margin-top: 40px;
	}
}
/**
/*  組織図 CSS
----------------------------------------------- */
.company-guide .organization{
	margin-top: 60px;
}
.company-guide .organization h2{
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom: 20px;
}
.company-guide .organization h2:first-letter{
	color: #13a8b1;
	font-size: 30px;
}
@media only screen and (max-width: 767px) {
	.company-guide .organization{
		margin-top: 8%;
	}
	.company-guide .organization h2{
		font-size: 4.6vw;
		margin-bottom: 3%;
	}
	.company-guide .organization h2:first-letter{
		font-size: 5vw;
	}
}
@media only screen and (min-width: 736px) and (max-width: 1024px){
	.company-guide .organization{
		margin-top: 40px;
	}
	.company-guide .organization h2{
		font-size: 22px;
		margin-bottom: 10px;
	}
	.company-guide .organization h2:first-letter{
		font-size: 26px;
	}
}
/**
/* 下層ページ共通 CSS
----------------------------------------------- */
.page-guide .page-grid .entry h3{
	font-size: 26px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: 30px;
}
.page-guide .page-grid .entry h3:first-letter{
	color: #13a8b1;
	font-size: 30px;
}
.page-guide .page-grid .entry p{
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.05em;
	margin-bottom: 30px;
}
.page-guide .page-grid .entry ol{
	list-style: decimal;
	margin-left: 20px;
	margin-bottom: 30px;
}
.page-guide .page-grid .entry ul{
	list-style: disc;
	margin-left: 20px;
	margin-bottom: 30px;
}
.page-guide .page-grid .entry ol li,
.page-guide .page-grid .entry ul li{
	font-size: 16px;
	line-height: 2;
}
@media only screen and (max-width: 767px) {
	.page-guide .page-grid .entry h3{
		font-size: 4.6vw;
		margin-bottom: 5%;
	}
	.page-guide .page-grid .entry h3:first-letter{
		font-size: 5vw;
	}
	.page-guide .page-grid .entry p{
		font-size: 3.6vw;
		margin-bottom: 5%;
	}
	.page-guide .page-grid .entry ol{
		margin-bottom: 5%;
	}
	.page-guide .page-grid .entry ul{
		margin-bottom: 5%;
	}
	.page-guide .page-grid .entry ol li,
	.page-guide .page-grid .entry ul li{
		font-size: 3.6vw;
	}
}
@media only screen and (min-width: 736px) and (max-width: 1024px){
	.page-guide .page-grid .entry h3{
		font-size: 22px;
		margin-bottom: 20px;
	}
	.page-guide .page-grid .entry h3:first-letter{
		font-size: 26px;
	}
	.page-guide .page-grid .entry p{
		font-size: 14px;
		margin-bottom: 20px;
	}
	.page-guide .page-grid .entry ol{
		margin-bottom: 20px;
	}
	.page-guide .page-grid .entry ul{
		margin-bottom: 20px;
	}
	.page-guide .page-grid .entry ol li,
	.page-guide .page-grid .entry ul li{
		font-size: 14px;
	}
}
/**
/* お問い合わせ CSS
----------------------------------------------- */
.form-box table tr th{
	font-size: 18px;
	font-weight: 600;
	padding: 10px 0;
	text-align: left;
	vertical-align: middle;
	width: 30%;
}
.form-box table tr th p{
	font-size: 18px;
	font-weight: 500;
	line-height: 1.6;
}
.form-box table tr th span.note{
	display: block;
	padding-left: 30px;
}
.form-box table tr th.required .ttl::before,
.form-box table tr th.any .ttl::before{
	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
	padding: 0 5px;
	margin-right: 10px;
	display: inline-block;
}
.form-box table tr th.required .ttl::before{
	background: #c8161d;
	content: "必須";
	color: #ffffff;
}
.form-box table tr th.any .ttl::before{
	background: #bbbbbb;
	content: "任意";
	color: #ffffff;
}
.form-box table tr td{
	font-size: 16px;
	padding: 10px;
}
@media only screen and (max-width: 767px) {
	.form-box table tr th,
	.form-box table tr td{
		display: block;
	}
	.form-box table tr th{
		font-size: 3.8vw;
		padding: 3% 0 0 0;
		width: 100%;
	}
	.form-box table tr th p{
		font-size: 3.6vw;
	}
	.form-box table tr th span.note{
		padding-left: 0;
	}
	.form-box table tr th.required .ttl::before,
	.form-box table tr th.any .ttl::before{
		font-size: 3.3333333333vw;
		padding: 0 5px;
		margin-right: 10px;
	}
	.form-box table tr td{
		font-size: 3.6vw;
		padding: 3% 0 5% 0;
	}
}
@media only screen and (min-width: 736px) and (max-width: 1024px){
	.form-box table tr th{
		font-size: 16px;
	}
	.form-box table tr th p{
		font-size: 16px;
	}
	.form-box table tr th span.note{
		padding-left: 20px;
	}
	.form-box table tr td{
		font-size: 14px;
	}
}
/**
/* Forms CSS
----------------------------------------------- */
input[type="date"],
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="url"],
textarea,
select{
	border: none;
	background: #f0f0f0;
	font-size: 16px;
	padding: 1em;
	width: 100%;
}
select{
	 appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	padding: 1em 2em 1em 1.4em;
}
.contact-detail{
	position: relative;
}
.contact-detail::after {
	position: absolute;
	content: '';
	width: 8px;
	height: 8px;
	right: 15px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	border-bottom: 2px solid #3a3a3a;
	border-right: 2px solid #3a3a3a;
}
input[type="date"]::placeholder,
input[type="text"]::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
textarea::placeholder{
	color: #c9c9c9;
}
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: #c9c9c9;
}
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: #c9c9c9;
}
textarea{
	height: 200px;
}
.submit_btn{
	text-align: center;
	padding-top: 60px;
}
input[type="submit"] {
	border: 1px solid #13a8b1;
	background: #13a8b1;
	color: #fff;
	cursor: pointer;
	font-size: 16px;
	font-weight: bold;
	line-height: 60px;
	height: 60px;
	text-align: center;
	width: 320px;
}
input[type="submit"]:hover {
	background: #fff;
	color: #13a8b1;
}
div.wpcf7 .ajax-loader,
.wpcf7-spinner{
	display: block;
}
@media only screen and (max-width: 767px) {
	input[type="date"],
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	textarea,
	select{
		font-size: 3.6vw;
		padding: 0.8em;
	}
	select{
		padding: 0.8em 1.5em 0.8em 1em;
	}
	textarea{
		height: 55.5555555556vw;
	}
	input.m-text{
		width: 100%;
	}
	input.s-text{
		width: 30%;
	}
	.submit_btn{
		padding-top: 5%;
	}
	input[type="submit"] {
		font-size: 3.8vw;
		line-height: 12vw;
		height: 12vw;
	}
	div.wpcf7 .ajax-loader,
	.wpcf7-spinner{
		display: inline-block;
	}
}
@media only screen and (min-width: 736px) and (max-width: 1024px){
	input[type="date"],
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	textarea,
	select{
		font-size: 14px;
		padding: 0.8em;
	}
	select{
		padding: 0.8em 1.5em 0.8em 1em;
	}
	textarea{
		height: 160px;
	}
	.submit_btn{
		padding-top: 30px;
	}
	input[type="submit"] {
		font-size: 16px;
		line-height: 50px;
		height: 50px;
	}
}
/**
/* エラーページ CSS
----------------------------------------------- */
.error-guide .page-grid .entry p{
	font-size: 18px;
	text-align: center;
}
.error-guide .entry .error_url{
	padding: 30px 0;
}
.error-guide .entry .block_btn{
	margin-top: 60px;
}
@media only screen and (max-width: 767px) {
	.error-guide .page-grid .entry p{
		font-size: 3.6vw;
	}
	.error-guide .entry .error_url{
		padding: 5% 0;
	}
	.error-guide .entry .block_btn{
		margin-top: 10%;
	}
}
@media only screen and (min-width: 736px) and (max-width: 1024px){
	.error-guide .page-grid .entry p{
		font-size: 16px;
	}
	.error-guide .entry .error_url{
		padding: 20px 0;
	}
	.error-guide .entry .block_btn{
		margin-top: 40px;
	}
}
