@charset "UTF-8";
/*
Theme Name: レスポンシブテンプレート
Theme URI: 
Description: サインズ
Version: 1.0
Author: sains
Author URI: 
*/

/******************
画像位置ぞろえ[共通]
******************/

img.aligncenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

img.alignright{
	margin-left: auto;
	display:block;
}

img.alignleft{
	text-align: left;
}

/******************
オールクリア[共通]
******************/

body,div,pre,p,blockquote,
form,fieldset,input,textarea,select,option,
dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
table,th,td,embed,object{
	margin: 0;
	padding: 0;
}
html{
	font-size:62.5%;
}
body{
	font-family:"Noto Serif JP", serif;
	font-size:1.6rem;
	color:#040000;
	line-height:1.6;
	-webkit-text-size-adjust: 100%;
	overflow-wrap: break-word;
	word-wrap: break-word;
	word-break: break-all;
	word-break: break-word;
}

img{
	border:none;
	vertical-align:bottom;
	max-width:100%;
	height:auto;
	-webkit-backface-visibility: hidden;
}

li{
	list-style-type:none;	
}

a{
	backface-visibility: hidden; 
	color:#040000;
	text-decoration:none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

a:hover{
	color:#004ea2;
	text-decoration:none;
}

a img{
    -webkit-transition: 0.3s ease-in-out;
       -moz-transition: 0.3s ease-in-out;
         -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out;
		outline:none;
		box-shadow: #000 0 0 0;
}

a:hover img{
	opacity:0.7;
	-moz-opacity:0.7;
	-webkit-opacity:0.7;
}

table{
	border-collapse:collapse;
	border-color: #333333;
}

th{
	font-weight:500;
}

td{
	vertical-align:top;
}
*, *:before, *:after {
	box-sizing: border-box;
}
@media screen and (max-width: 850px) {
	body{
		font-size:1.6rem;
	}
}
/******************
ヘッダー[PC]
******************/
#header{
	position:fixed;
	top:0;
	left:0;
	right:0;
	z-index:100;
}
#headerBox{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin-right: auto;
	transition:.3s;
}
#wrapper #headerBox{
	background-color:rgba(188,221,237,0.6);
}
#headerLogo{
	width:30%;
	margin-left:4%;
}
#headerLogo a{
	display:block;
	line-height:1;
	font-size:1rem;
}
#headerRight{
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: center;
}
#h-job{
	width:200px;
	line-height:60px;
	margin-left:30px;
	font-size:1.6rem;
}
#h-job a{
	text-align:center;
	color:#004ea2;
	display:block;
	background-color:#5dc2d4;
	padding:9px 30px 10px;
}
#h-job a::before{
	content: '\f007';
	font-family: 'Font Awesome 5 Free';
	font-weight:bold;
	color:#fff;
	padding-right:10px;
}
#h-job a:hover{
	color:#fff;
	background-color:#5d87d4;
}
#sp-job, #sp-company{
	display:none;
}
.checkbox, .menu-button, .nav-unshown{
	display: none;
}
.menu-list{
	display:flex;
}
.menu-list li a{
	display: block;
	font-weight: 500;
	margin-right:60px;
	padding: 10px;
	font-size:1.6rem;
}
.menu-list li span::after {
    background-color: #4466b3;
    content: '';
    display: block;
    height: 1px;
    margin: 2px auto 0;
    transition: 0.5s;
    -webkit-transition: 0.5s;
    width: 0;
}
.menu-list li a:hover span:after{
	width:100%;
}
#menu-home{
	display:none;
}
.h-scroll {
	background-color:rgba(255,255,255,0.8);
	transition:.3s;
}
@media screen and (max-width: 1520px) {
	.menu-list li a{
		margin:0 25px;
	}
}
@media screen and (max-width: 1360px) {
	#headerLogo{
		width:35%;
		margin-left:2%;
	}
	.menu-list li a{
		margin:0 15px;
	}
	#h-job{
		width:160px;
		margin-left:10px;
	}
}
@media screen and (max-width: 1180px) {
	.menu-list li a{
		font-size:1.4rem;
		margin:0 5px;
	}
	#h-job{
		width:140px;
		line-height:50px;
	}
	#h-job a{
		font-size:1.6rem;
		padding:9px 10px 10px;
	}
}
/******************
ヘッダー[スマートフォン]
******************/
@media screen and (max-width: 960px) {
	#menu-home{
		display:block;
	}
/*
	#header{
		height:70px;
		position:absolute;
	}
	#headerBox{
		height:70px;
		display:block;
	}
	.menu-button, .menu-bg {
		display:block;
	}
	.menu-button {
		background-color: #5b5d62;
		height: 5rem;
		width: 5rem;
		border-radius: 50%;
		position: fixed;
		top: 1vh;
		right: 3vw;
		z-index: 2000;
		text-align: center;
		cursor: pointer;
	}
	.menu-bg {
		height: 4rem;
		width: 4rem;
		border-radius: 50%;
		position: fixed;
		top: 1.5vh;
		right: 3.5vw;
		background-image: radial-gradient(#d4ebf7, #9aa2cc);
		z-index: 1000;
		transition: transform 0.8s cubic-bezier(0.86, 0, 0.07, 1);
	}
	.menu-nav {
		height: 100vh;
		position: fixed;
		top: 0;
		right: -60vw;
		z-index: 1500;
		opacity: 0;
		width: 0;
		transition: all 0.8s;
	}
	.menu-list {
		display:block;
		position: absolute;
		top: 30%;
		left: 50%;
		transform: translate(-50%, -30%);
		list-style: none;
		text-align: center;
		width: 100%;
		z-index:2000;
	}
	.menu-list li a {
		margin: 1rem;
		font-size: 2rem;
		display:inline-block;
		padding:5px;
	}
	.checkbox:checked ~ .menu-bg {
		transform: scale(80);
	}
	.checkbox:checked ~ .menu-nav {
		opacity: 1;
		width: 100%;
		right: 0;
	}
	.menu-icon {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.menu-icon, .menu-icon::before, .menu-icon::after {
		width: 3rem;
		height: 2px;
		background-color: #fff;
		display: inline-block;
	}
	.menu-icon::before, .menu-icon::after {
		content: "";
		position: absolute;
		left: 0;
		transition: all 0.2s;
	}
	.menu-icon::before {
		top: -0.8rem;
	}
	.menu-icon::after {
		top: 0.8rem;
	}
	.menu-button:hover icon:before {
		top: -1rem;
	}
	.menu-button:hover icon::after {
		top: 1rem;
	}
	.checkbox:checked + .menu-button .menu-icon{
		background-color: transparent;
	}
	.checkbox:checked + .menu-button .menu-icon::before {
		top: 0;
		transform: rotate(135deg);
	}
	.checkbox:checked + .menu-button .menu-icon::after {
		top: 0;
		transform: rotate(-135deg);
	}
	#side{
		display:none;
	}
*/
}
@media screen and (max-width: 850px) {
	#header{
		height:80px;
	}
	#headerBox{
		height:80px;
		flex-direction: row-reverse;
	}
	#headerRight{
		margin-left:3%;
	}
	#h-job{
		display:none;
	}
	#sp-job{
		display:block;
		max-width:400px;
		width:90%;
		line-height:40px;
		margin:30px auto;
		font-size:1.6rem;
	}
	#sp-job a{
		text-align:center;
		color:#004ea2;
		display:block;
		background-color:#5dc2d4;
		padding:9px 30px 10px;
	}
	#sp-job a::before{
		content: '\f007';
		font-family: 'Font Awesome 5 Free';
		font-weight:bold;
		color:#fff;
		padding-right:10px;
	}
	#sp-job a:hover{
		color:#fff;
		background-color:#5d87d4;
	}
	#sp-company{
		max-width:400px;
		width:90%;
		margin:40px auto;
		display:block;
	}
	#sp-company a{
		margin:auto;
		font-size:1.6rem;
		display:block;
		border:1px solid #000;
		padding:10px 30px 10px 10px;
		text-align:center;
		position:relative;
	}
	#sp-company a::before{
		content: '\f47d';
		font-family: 'Font Awesome 5 Free';
		position: absolute;
		top: 11px;
		right: 10%;
		font-weight:bold;
		transition: .3s;
	}
	#sp-company a:hover{
		color:#fff;
		background-color:#004ea2;
	}
	#sp-company a:hover::before{
		color:#fff;
	}
	#nav-open {
		display: inline-block;
		width: 30px;
		height: 25px;
		vertical-align: middle;
	}
	#nav-open span, #nav-open span:before, #nav-open span:after {
		position: absolute;
		height: 3px;
		width: 30px;
		border-radius: 3px;
		background: #2ca6df;
		display: block;
		content: '';
		cursor: pointer;
	}
	#nav-open span:before {
		bottom: -8px;
	}
	#nav-open span:after {
		bottom: -16px;
	}
	#nav-close {
		display: none;
		position: fixed;
		z-index: 99;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: black;
		opacity: 0;
		transition: .3s ease-in-out;
	}
	#nav-content {
		overflow: auto;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
		width: 90%;
		max-width: 80%;
		height: 100%;
		background:#fff;
		transition: .3s ease-in-out;
		-webkit-transform: translateX(-105%);
		transform: translateX(-105%);
		border-top:5px solid #2ca6df;
	}
	#nav-input:checked ~ #nav-close {
		display: block;
		opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
		box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}
	#headerLogo{
		width:82%;
		max-width:480px;
		margin:auto;
	}
	.menu-list{
		display:block;
	}
	.menu-list li a{
		display: block;
		padding: 15px 2% 15px 40px;
		font-size:1.6rem;
		position:relative;
	}
	.menu-list li a::before{
		content: '\f054';
		font-family: 'Font Awesome 5 Free';
		position: absolute;
		top: 22px;
		left: 20px;
		font-size:1rem;
		font-weight: bold;
		transition: .3s;
		color:#2ca6df;
	}
	.menu-list li span::after{
		content:unset;
	}
}
@media screen and (max-width: 460px) {
	#sp-company a{
		font-size:1.4rem;
	}
	#sp-company a::before{
		right:5%;
	}
}
/*コンテンツ*/
#mainImgBox{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding-top: 49%;
	position: relative;
	overflow: hidden;
	background-image:url('./images/recruit/recruit-main.jpg');
}
#mainTxt1{
	position:absolute;	
	bottom:20px;
	left:1%;
	width:1%;
	max-width:10px;
	z-index:10;
}
#mainTxt2{
	position:absolute;	
	top:50%;
	left:10%;
	transform: translate(0,-50%);
	max-width:110px;
	width:7%;
	z-index:10;
}
#message, #philosophy, #overview, #features, #work-style, #benefits{
	padding-top: 100px;
	margin-top: -100px;
}
@media screen and (max-width: 1360px) {
	#mainImgBox{
		padding-top: 54%;
	}
	#mainTxt1{
		max-width:7px;
	}
}
@media screen and (max-width: 850px) {
	#mainImgBox{
	background-image:url('./images/recruit/recruit-main-sp.jpg');
		padding-top:116%;
		background-position: left top;
	}
	#mainTxt1{
		max-width:10px;
		width:2%;
	}
	#mainTxt2 {
		top: 40%;
		transform: translate(0,-40%);
		width: 12%;
		left:8%;
	}
}
@media screen and (max-width: 640px) {
	#mainImgBox{

	}
	#mainTxt1 {
		max-width: 8px;
		width: 1.5%;
	}
}
/*メッセージ*/
#messageBox{
	margin:100px auto;
}
#md-message{
	text-align:center;
}
#messageTitle{
	display:table;
	margin:-30px auto 20px;
	font-size:2.4rem;
	font-weight:500;
}
#messageTxt{
	text-align:center;
	line-height:2.4;
}
#messageTxt span{
	display:block;
}
@media screen and (max-width: 850px) {
	#messageBox{
		width:94%;
		margin:60px auto;
	}
	#messageTxt{
		text-align:left;
	}
	#messageTxt span{
		display:inline;
	}
}
@media screen and (max-width: 640px) {
	#md-message{
		max-width:300px;
		width:60%;
		margin:auto;
	}
	#messageBox{
		margin:30px auto 60px;
	}
	#messageTitle{
		font-size:2rem;
	}
}
/*求人一覧*/
#recruitBg{
	background-color: #f4fafd;
	background-image: radial-gradient(circle, #b6e1f4 1px, transparent 1px), radial-gradient(circle, #b6e1f4 1px, transparent 1px);
	background-size: 10px 20px;
	background-position:0 0, 5px 10px;
	padding:60px 0;
}
#recruitBg2{
	background-image: radial-gradient(circle, #b6e1f4 1px, transparent 1px), radial-gradient(circle, #b6e1f4 1px, transparent 1px);
	background-size: 10px 20px;
	background-position:0 0, 5px 10px;
	padding:60px 0;
}
.mdBox{
	text-align:center;
	margin:0 auto 60px;
}
.md-recruit{
	display:inline-block;
	font-size:4rem;
	font-weight:bold;
	color:#004ea2;
	position:relative;
	padding:0 50px;
}
.md-recruit::before{
	content:"";
	position:absolute;
	top:8px;
	left:0;
	width:34px;
	height:100%;
	background-image:url('./images/recruit/icon01.svg');
	background-repeat: no-repeat;
}
.md-recruit::after{
	content:"";
	position:absolute;
	top:8px;
	right:0;
	width:34px;
	height:100%;
	background-image:url('./images/recruit/icon02.svg');
	background-repeat: no-repeat;
}
.md-recruit span{
	display:block;
	color:#040000;
	font-size:1.8rem;
	font-weight:500;
	margin-top:10px;
}
.recruitTitle{
	display:table;
	font-size:2rem;
	margin:0 auto 60px;
	padding:0 2%;
}
.recruitList{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	max-width:1200px;
	margin:0 auto 80px;
}
.recruitList li{
	width:31.3333%;
	margin:0 1% 30px;
	box-shadow:3px 3px 20px #7597b6;
}
.recruitList li a{
	display:block;
	color:#040000;
	background-color:#fff;
	text-align:center;
	font-weight:500;
	padding:20px 10px;
	transition:.3s;
	position:relative;
	z-index:1;
}
.recruitList li a::before{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: -1;
	top:0;
	left: 0;
	transition: .3s;
}
.recruitList li a::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: -2;
	top:0;
	left: 0;
}
.recruitList li.btn-color1 a::before, .recruitList li.btn-color7 a::before{
	background-image: linear-gradient(90deg, rgba(168, 215, 228, 1), rgba(216, 237, 236, 1));
}
.recruitList li.btn-color1 a::after, .recruitList li.btn-color7 a::after{
	background-image: linear-gradient(90deg, rgba(121, 183, 229, 1), rgba(192, 225, 200, 1));
}
.recruitList li.btn-color2 a::before, .recruitList li.btn-color8 a::before{
	background-image: linear-gradient(90deg, rgba(250, 227, 228, 1), rgba(253, 237, 210, 1));
}
.recruitList li.btn-color2 a::after, .recruitList li.btn-color8 a::after{
	background-image: linear-gradient(90deg, rgba(241, 191, 200, 1), rgba(245, 221, 208, 1));
}
.recruitList li.btn-color3 a::before, .recruitList li.btn-color9 a::before{
	background-image: linear-gradient(90deg, rgba(202, 228, 218, 1), rgba(232, 242, 220, 1));
}
.recruitList li.btn-color3 a::after, .recruitList li.btn-color9 a::after{
	background-image: linear-gradient(90deg, rgba(125, 180, 158, 1), rgba(216, 233, 209, 1));
}
.recruitList li.btn-color4 a::before, .recruitList li.btn-color10 a::before{
	background-image: linear-gradient(90deg, rgba(181, 200, 229, 1), rgba(195, 225, 231, 1));
}
.recruitList li.btn-color4 a::after, .recruitList li.btn-color10 a::after{
	background-image: linear-gradient(90deg, rgba(155, 160, 228, 1), rgba(103, 185, 209, 1));
}
.recruitList li.btn-color5 a::before, .recruitList li.btn-color11 a::before{
	background-image: linear-gradient(90deg, rgba(252, 221, 192, 1), rgba(240, 240, 206, 1));
}
.recruitList li.btn-color5 a::after, .recruitList li.btn-color11 a::after{
	background-image: linear-gradient(90deg, rgba(248, 196, 146, 1), rgba(239, 240, 168, 1));
}
.recruitList li.btn-color6 a::before, .recruitList li.btn-color12 a::before{
	background-image: linear-gradient(90deg, rgba(194, 217, 241, 1), rgba(227, 209, 230, 1));
}
.recruitList li.btn-color6 a::after, .recruitList li.btn-color12 a::after{
	background-image: linear-gradient(90deg, rgba(143, 216, 240, 1), rgba(218, 175, 229, 1));
}
.recruitList li a:hover::before {
	opacity: 0;
}
#flowImg{
}
#flowTxt{
	font-size:2rem;
	text-align:center;
	margin:30px auto 0;
}
#stepBox{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}
#stepBox .stepFrame{
	width:11%;
	position:relative;
	margin-right:70px;
	border:3px solid #004ea2;
	padding:20px 1% 30px;
	color:#004ea2;
	background-color:#fff;
}
#stepBox .stepFrame:last-child{
	margin-right:0;
}
#stepBox .stepFrame::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	top: 50%;
	left: 100%;
	transform: translateY(-50%);
	border-bottom: 2px solid #004ea2;
}
#stepBox .stepFrame:last-child::before{
	position:static;
	content:unset;
}

#stepBox .stepFrame:nth-child(1)::after, #stepBox .stepFrame:nth-child(2)::after, #stepBox .stepFrame:nth-child(3)::after{
	content:"1週間";
	position:absolute;
	top:40%;
	transform: translateY(-40%);
	right:-60px;
	font-size:1.6rem;
	font-weight:bold;
}
.stepNum{
	font-size:2rem;
	font-weight:bold;
	text-align:center;
	letter-spacing:0.1rem;
}
.stepTitle{
	font-size:1.6rem;
	font-weight:bold;
	text-align:center;
	font-family:"游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	margin:0px auto 20px;
}
.stepImg{
	width:100%;
	text-align:center;
	margin:auto;
}
@media screen and (max-width: 1060px) {
	#stepBox .stepFrame{
		width:24%;
		margin-bottom:30px;
	}
	#stepBox .stepFrame:last-child{
		margin-right:70px;
	}
}
@media screen and (max-width: 850px) {
	.recruitList{
		margin:auto;
	}
	.recruitList li{
		width:46%;
		margin:0 2% 30px;
	}
	.recruitingBox{
		margin:0 auto 80px;
	}
	#stepBox .stepFrame{
		width:38%;
	}
	#stepBox .stepFrame:last-child{

	}
}
@media screen and (max-width: 640px) {
	.mdBox{
		margin:0 auto 40px;
	}
	.recruitTitle {
		font-size: 1.8rem;
		margin: 0 auto 40px;
	}
	.recruitList{
		display:block;
	}
	.recruitList li{
		width:92%;
		max-width:400px;
		margin:0 auto 20px;
		box-shadow: 3px 3px 12px #7597b6;
	}
	.recruitList li a{
		padding:12px 10px;
	}
	.md-recruit{
		font-size:3rem;
	}
	.md-recruit span{
		margin-top:0;
	}
	.md-recruit::before, .md-recruit::after{
		top:0;
	}
	#stepBox{
		display:block;
	}
	#stepBox .stepFrame{
		width:90%;
		max-width:240px;
		margin:0 auto 60px;
	}
	#stepBox .stepFrame:last-child{
		margin:0 auto;
	}
	#stepBox .stepFrame::before{
		position: absolute;
		content: "";
		width: 2px;
		height: 64px;
		top: unset;
		bottom:-64px;
		left:0;
		right:0;
		margin:auto;
		transform:unset;
		border:none;
		background-color:#004ea2;
	}
	#stepBox .stepFrame:nth-child(1)::after, #stepBox .stepFrame:nth-child(2)::after, #stepBox .stepFrame:nth-child(3)::after{
		top:unset;
		bottom:-45px;
		transform: unset;
		right:60%;
	}
	#flowTxt{
		font-size:1.8rem;
		text-align:left;
	}
}
/*ABOUT US 私たちについて*/
#aboutBox{
	display:flex;
    flex-direction: row-reverse;
	margin:100px auto;
}
#aboutLeft{
	width:46%;
	margin:40px 8% 0 4%;
}
#aboutRight{
	width:42%;
}
#md-about{
	margin:0 auto 30px;
	font-size:4rem;
	font-weight:bold;
	color:#004ea2;
	position:relative;
}
#md-about span{
	display:block;
	color:#040000;
	font-size:1.8rem;
	font-weight:500;
	margin:10px 0 0 5px;
}
#aboutTxt{
	margin:0 0 40px 10px;
	line-height:2;
}
#aboutUl{
	width:90%;
	max-width:600px;
	margin-left:auto;
}
#aboutUl li{
	border-bottom:1px solid #4e4b4b;
}
#aboutUl li a{
	display:flex;
	padding:20px 20px 20px 60px;
	justify-content: space-between;
	position:relative;
}
#aboutUl li a::before{
	content:"";
	position:absolute;
	top:15px;
	left:0;
	width:40px;
	height:100%;
	background-repeat: no-repeat;
}
#aboutUl li.icon-color1 a::before{
	background-image:url('./images/recruit/about-icon01.svg');
}
#aboutUl li.icon-color2 a::before{
	background-image:url('./images/recruit/about-icon02.svg');
}
#aboutUl li.icon-color3 a::before{
	background-image:url('./images/recruit/about-icon03.svg');
}
#aboutUl li.icon-color1 a:hover{
	background-color:#ebfbff;
}
#aboutUl li.icon-color2 a:hover{
	background-color:#ffe5e1;
}
#aboutUl li.icon-color3 a:hover{
	background-color:#eafff1;
}
#aboutUl li span{
	font-size: 1.4rem;
	position:relative;
	padding:5px 40px 0 ;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
}
#aboutUl li span::before,
#aboutUl li span::after{
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
#aboutUl li span::before{
	width: 18px;
	height: 18px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #000;
}
#aboutUl li.icon-color1 span::before{
	background: #309ebd;
}
#aboutUl li.icon-color2 span::before{
	background: #f08c7e;
}
#aboutUl li.icon-color3 span::before{
	background: #47a59b;
}
#aboutUl li span::after{
	right: 1px;
	box-sizing: border-box;
	width: 6px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 6px solid #fff;
}
.icon-color1{
	color:#309ebd;
}
.icon-color2{
	color:#f08c7e;
}
.icon-color3{
	color:#47a59b;
}
@media screen and (max-width: 1280px) {
	#aboutLeft{
		width:54%;
		margin:0 3%;
	}
}
@media screen and (max-width: 850px) {
	#aboutBox{
		display:block;
		margin:60px auto;
	}
	#aboutLeft{
		width:96%;
		margin:0 auto 30px;
	}
	#aboutRight{
		width:100%;
	}
	#aboutUl{
		margin:auto;
	}
	#md-about{
		text-align:center;
	}
	#aboutTxt{
		margin:0 auto 20px;
	}
}
@media screen and (max-width: 640px) {
	#md-about{
		font-size:3rem;
	}
	#md-about span{
		margin-top:0;
	}
}
/*ENVIRONMENT 働く環境*/
#featuresBox{
	display:flex;
	align-items:center;
}
#featuresLeft{
	width:50%;
	margin-right:5%;
}
#featuresRight{
	width:45%;
}
#environmentBox{
	display:flex;
}
#environmentLeft{
	width:46%;
	margin:40px 4% 0 8%;
}
#environmentRight{
	width:42%;
}
#md-environment{
	margin:0 auto 30px;
	font-size:4rem;
	font-weight:bold;
	color:#004ea2;
	position:relative;
}
#md-environment span{
	display:block;
	color:#040000;
	font-size:1.8rem;
	font-weight:500;
	margin:10px 0 0 5px;
}
#environmentTxt{
	margin:0 0 40px 10px;
	line-height:2;
}
#environmentUl{
	width:90%;
	max-width:600px;
	margin-right:auto;
}
#environmentUl li{
	border-bottom:1px solid #4e4b4b;
}
#environmentUl li a{
	display:flex;
	padding:20px 20px 20px 60px;
	justify-content: space-between;
	position:relative;
}
#environmentUl li a::before{
	content:"";
	position:absolute;
	top:15px;
	left:0;
	width:40px;
	height:100%;
	background-repeat: no-repeat;
}
#environmentUl li.icon-color1 a::before{
	background-image:url('./images/recruit/environment-icon01.svg');
}
#environmentUl li.icon-color2 a::before{
	background-image:url('./images/recruit/environment-icon02.svg');
}
#environmentUl li.icon-color3 a::before{
	background-image:url('./images/recruit/environment-icon03.svg');
}
#environmentUl li.icon-color1 a:hover{
	background-color:#ebfbff;
}
#environmentUl li.icon-color2 a:hover{
	background-color:#ffe5e1;
}
#environmentUl li.icon-color3 a:hover{
	background-color:#eafff1;
}
#environmentUl li span{
	font-size: 1.4rem;
	position:relative;
	padding:5px 40px 0 ;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
}
#environmentUl li span::before,
#environmentUl li span::after{
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
#environmentUl li span::before{
	width: 18px;
	height: 18px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #000;
}
#environmentUl li.icon-color1 span::before{
	background: #309ebd;
}
#environmentUl li.icon-color2 span::before{
	background: #f08c7e;
}
#environmentUl li.icon-color3 span::before{
	background: #47a59b;
}
#environmentUl li span::after{
	right: 1px;
	box-sizing: border-box;
	width: 6px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 6px solid #fff;
}
@media screen and (max-width: 1280px) {
	#environmentLeft{
		width:54%;
		margin:0 3%;
	}
}
@media screen and (max-width: 850px) {
	#environmentBox{
		display:block;
	}
	#environmentLeft{
		width:96%;
		margin:0 auto 30px;
	}
	#environmentRight{
		width:100%;
	}
	#environmentUl{
		margin:auto;
	}
	#md-environment{
		text-align:center;
	}
	#environmentTxt{
		margin:0 auto 20px;
	}
}
@media screen and (max-width: 750px) {
	#featuresBox{
		display:block;
	}
	#featuresLeft{
		width:100%;
		margin:0 auto 30px;
	}
	#featuresRight{
		width:100%;
	}
}
@media screen and (max-width: 640px) {
	#md-environment{
		font-size:3rem;
	}
	#md-environment span{
		margin:auto;
	}
}
/*数字で知る*/
#numbers{
	margin:100px auto;
}
#numbersBox{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	max-width:1200px;
	width:100%;
	margin:auto;
}
#md-numbers{
	text-align:center;
	font-size:4rem;
	font-weight:bold;
	color:#004ea2;
	position:relative;
	margin:0 auto 60px;
}
#md-numbers .md-kaigyo{
	padding-left:10px;
}
#md-numbers .md-sub{
	display:block;
	color:#040000;
	font-size:1.8rem;
	font-weight:500;
	margin-top:10px;
}
.numbersFrame{
	width:29.33333%;
	margin:0 2% 40px;
	padding:0 2%;
	box-shadow:3px 3px 20px #649bc8;
}
.numbersTitle{
	text-align:center;
	font-size:2.4rem;
	font-weight:bold;
	color:#0d71a5;
	padding:30px 0 20px;
	border-bottom:1px solid #0d71a5;
}
.numbersImg{
	width:70%;
	margin:auto;
	padding:30px 0;
}

.moreBtn{
	max-width:300px;
	width:96%;
	margin:60px auto 0;
}
.moreBtn a{
	display:block;
	text-align:center;
	color:#004ea2;
	border:2px solid #004ea2;
	padding:15px 15px 17px 10px;
	position:relative;
	transition:.3s;
}
.moreBtn a::after{
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 20px;
	margin: auto;
	content: "";
	box-sizing: border-box;
	width: 8px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 8px solid #004ea2;
	transition:.3s;
}
.moreBtn a:hover{
	color:#fff;
	background-color:#004ea2;
}
.moreBtn a:hover::after{
	border-left: 8px solid #fff;
}
@media screen and (max-width: 850px) {
	#numbers{
		margin:60px auto;
	}
	#numbersBox{
		width:96%;
	}
	.numbersFrame{
		box-shadow: 3px 3px 15px #649bc8;
	}
}
@media screen and (max-width: 640px) {
	#numbersBox{
		display:block;
	}
	.numbersFrame{
		max-width:320px;
		width:90%;
		margin:0 auto 40px;
	}
	.numbersImg{
		width:50%;
		padding:15px 0 25px;
	}
	#md-numbers{
		font-size:3rem;
	}
	#md-numbers .md-kaigyo{
		display:block;
		line-height:1;
		padding:0;
	}
	.moreBtn{
		margin:30px auto 0;
	}
}
/*インタビュー*/
#interviewBg{
	background-color: #ddeaf5;
	padding:60px 0;
}
#interviewFlex{
	display:flex;
	align-items:center;
	max-width:1200px;
	width:96%;
	margin:auto;
}
#md-interview{
	margin:0 0 30px;
	font-size:4rem;
	font-weight:bold;
	color:#004ea2;
	position:relative;
}
#md-interview span{
	display:block;
	color:#040000;
	font-size:1.8rem;
	font-weight:500;
	margin:10px 0 0 5px;
}
#interviewTxt2{
	font-size:2rem;
	margin-left:80px;
	background-color:#fff;
	padding:5px 20px 6px;
}
#interviewBox, #interviewBox2{
	max-width:1200px;
	margin:auto;
}
.interviewFrame{
}
.interviewFrame a{
	display:block;
}
.interviewTitle{
	font-size:2rem;
	font-weight:bold;
	padding:20px 0 10px;
}
.interviewImg{
	margin:auto;
	box-shadow:3px 3px 20px #649bc8;
}
.interviewTxt{
	position:relative;
	padding:0 20px 0 5px;
	background-image: linear-gradient(180deg, #231815 1px, transparent 1px); /* 罫線の色と太さ */
	background-size: 100% 2.5em; /* 行の高さ */
	line-height: 2.5em; /* 文字の高さ */
	padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
.interviewIcon{
	position:relative;
}
.pen{
	position:absolute;
	top:-24px;
	right:-25px;
}
#interviewBox .slick-img, #interviewBox2 .slick-img{
	margin:15px 28px;
	position: relative;
	display: flex;
	flex-direction: column;
}
#interviewBox .slick-track, #interviewBox2 .slick-track{
	margin:0;
}
.slide-none{
	display: flex !important;
	justify-content: center;
}
.slide-none .slick-img{
	width:calc(25% - 10px) !important;
}
.slide-arrow {
	cursor: pointer;
	margin: auto;
	position: absolute;
	top:36%;
	-webkit-transform: translate(0, -36%);
	-ms-transform: translate(0, -36%);
	transform: translate(0, -36%);
	width: 30px;
	transition:.3s;
}
.slide-arrow:hover{
	opacity:0.7;
}
.prev-arrow {
	left: -26px;
	z-index:1;
}
.next-arrow {
	right: -26px;
	z-index:1;
}
.slick-slide img {
	object-fit: cover;
	aspect-ratio: 3/4;
}
@media screen and (max-width: 1280px) {
	#interviewTxt2{
		margin-left:40px;
	}
	.prev-arrow {
		left: 5px;
	}
	.next-arrow {
		right: 5px;
		z-index:1;
	}
}
@media screen and (max-width: 960px) {
	.pen{
		width:30px;
		top:-15px;
		right:-18px;
	}
	#interviewFlex{
		display:block;
	}
	#interviewTxt2{
		display:table;
		margin:0 auto 40px;
		padding:5px 15px 6px 20px;
	}
}
@media screen and (max-width: 850px) {
	#md-interview{
		text-align:center;
	}
}
@media screen and (max-width: 640px) {
	#md-interview{
		font-size:3rem;
	}
	#md-interview span{
		margin-top:0;
	}
	.slick-slide img {
		aspect-ratio: 1/1;
	}
}
/*診療時間・アクセス*/
#accessBox{
	display:flex;
	max-width:1200px;
	width:96%;
	margin:auto;
	padding:80px 0 60px;
}
#accessLeft{
	width:35%;
	margin-right:5%;
	/*font-family: "BIZ UDGothic", serif;*/
}
#accessRight{
	width:60%;
}
#md-access{
	margin:0 0 30px;
	font-size:3rem;
	font-weight:bold;
	color:#004ea2;
	position:relative;
}
#md-access span{
	display:block;
	color:#040000;
	font-size:1.8rem;
	font-weight:500;
	margin:4px 0 0 2px;
}
#f-tel{
	max-width:90%;
	margin:50px auto 30px;
}
#f-fax{
	max-width:70%;
	margin:0 auto;
}
#accessAdd{
	font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",メイリオ, Meiryo, sans-serif, 游ゴシック, YuGothic,Helvetica,Arial, 'M PLUS 1p','Kosugi',sans-serif;
}
#f-logo{
	max-width:70%;
	margin:40px 0 20px;
}
#caution{
	font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",メイリオ, Meiryo, sans-serif, 游ゴシック, YuGothic,Helvetica,Arial, 'M PLUS 1p','Kosugi',sans-serif;
	font-size:1.2rem;
	margin-top:10px;
	text-indent:-1.3rem;
	padding-left:1.3rem;
}
#ggmap{
	position: relative;
	padding-bottom: 100%;
	height: 0;
	overflow: hidden;
	width:100%;
}
#ggmap iframe,
#ggmap object,
#ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 960px) {
	#accessBox{
		width:100%;
		display:block;
		padding:60px 0;
	}
	#accessLeft{
		width:96%;
		max-width:400px;
		margin:0 auto 30px;
	}
	#accessRight{
		width:100%;
	}
	#ggmap {
		padding-bottom: 54%;
	}
	#f-logo{
		margin:40px auto 30px;
	}
}
@media screen and (max-width: 850px) {
	#accessBox{
		padding:80px 0 0;
	}
	#md-access{
		text-align:center;
	}
}
@media screen and (max-width: 640px) {
	#md-access{
		font-size:2.5rem;
	}
	#md-access span{
		margin-top:0;
	}
}
@media screen and (max-width: 430px) {
	#ggmap {
		padding-bottom: 100%;
	}
}
/*フッター*/
#footer{
	background-color:#eef3f6;
	padding:60px 0 0;
}
#footerMenu{
	width:96%;
	max-width:900px;
	margin:auto;
}
#footerMenu ul{
	display:flex;
	flex-wrap: wrap;
}
#footerMenu ul li{
	width:23%;
	margin:0 1% 30px;
	position:relative;
	padding-left:15px;
	font-size:1.4rem;
}
#footerMenu ul li a::after {
	position: absolute;
	top: 2px;
	bottom: 0;
	left: 0px;
	margin: auto;
	content: "";
	box-sizing: border-box;
	width: 6px;
	height: 4px;
	border: 4px solid transparent;
	border-left-width: 4px;
	border-left-style: solid;
	border-left-color: transparent;
	border-left: 6px solid #2e65b0;
	transition: .3s;
}
#footerLink{
	max-width:350px;
	margin:40px auto;
}
#footerLink a{
	margin:auto;
	font-size:1.6rem;
	display:block;
	border:1px solid #000;
	padding:10px 30px 10px 10px;
	text-align:center;
	position:relative;
}
#footerLink a::before{
	content: '\f47d';
	font-family: 'Font Awesome 5 Free';
	position: absolute;
	top: 11px;
	right: 10%;
	font-weight:bold;
	transition: .3s;
}
#footerLink a:hover{
	color:#fff;
	background-color:#004ea2;
}
#footerLink a:hover::before{
	color:#fff;
}
#copyright{
	text-align:center;
	font-size:1.4rem;
	padding:20px 0;
}
#pageTopBtn{
	clear:both;
	z-index:9000;
	display:block;
	position: fixed;
	bottom: 15px;
	right: 15px;
}

@media screen and (max-width: 850px) {
	#footerMenu{
		max-width:630px;
		margin:0 0 0 auto;
	}
	#footerMenu ul li{
		width:29.3333%;
		margin:0 2% 30px;
	}
}
@media screen and (max-width: 640px) {
	#footerMenu{
	}
	#footerMenu ul li{
		width:46%;
		margin:0 0% 30px 4%;
	}
	#copyright{
		font-size:1.2rem;
	}
}
@media screen and (max-width: 460px) {
	#footer{
		padding-top:30px;
	}
	#footerMenu{
		width:100%;
	}
	#footerMenu ul li{
		width:96;
		margin:0 auto 20px 4%;
		font-size:1.2rem;
	}
	#footerMenu ul li a::after {
		left: 5px;
		width: 4px;
		height: 2px;
		border: 4px solid transparent;
		border-left-width: 4px;
		border-left: 4px solid #2e65b0;
	}
	#footerLink{
		margin:20px auto 40px;
	}
	#copyright{
		font-size:1rem;
	}
	#pageTopBtn{
		bottom: 40px;
	}
}
/*中ページ*/
.contents{
	padding:80px 0 0;
}
#mdBg{
	margin: 0 auto;
	position: relative;
	z-index: 0;
	height: 300px;
	background-image: radial-gradient(circle, #b6e1f4 1px, transparent 1px), radial-gradient(circle, #b6e1f4 1px, transparent 1px);
	background-size: 10px 20px;
	background-position: 0 0, 5px 10px;
}
#wrapper h1{
	font-size: 4rem;
	color: #004ea2;
	text-align:center;
	position: absolute;
	top: 45%;
	left: 0;
	right: 0;
	transform: translate(0,-45%);
}
#wrapper h1 span{
	display: block;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.2;
	color: #040000;
}
#wrapper h2{
	font-size:3rem;
	text-align:center;
	padding-bottom:10px;
	color:#004ea2;
	/*border-bottom:1px solid #004ea2;*/
	margin:0 auto 40px;
	position:relative;
	border-bottom: solid 2px #ccc;
}
#wrapper h2::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 50%;
	transform: translateX(-50%);
	width: 150px;
	height: 2px;
	background-color: #004ea2;
}
#wrapper h3{
	font-size:2.4rem;
	margin:0 auto 15px;
	position:relative;
	padding-left:30px;
}
#wrapper h3::before{
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left:0;
	width: 25px;
	height: 1px;
	background-color: #2589d0;
}
.editPostLink{
	display:none;
	margin:30px 0;
}
.editPostLink a{
	color:#fff;
	font-size:1.6rem;
	line-height:1.6;
	background-color:#000;
	padding:4px 10px;
	border-radius:6px;
}
.breadWaku{
	width:100%;
	overflow:hidden;
	position:relative;
}
.bread{
	width:96%;
	max-width:1200px;
	margin:0 auto;
	font-size:1.6rem;
	padding:20px 0 10px;
}
#wrapper .main{
	width:96%;
	max-width:1200px;
	margin:60px auto;
}
.commonBox{
	clear:both;
	margin:0 auto 80px;
}
.txt-size1{
	font-size:2rem;
	font-weight:bold;
	margin-bottom:20px;
	padding:2px 0 2px 8px;
	border-left:5px solid #0034a3;
	line-height:1.4;
}
.txt-size2{
	margin:0 0 0 40px;
}
.txt-size3{
	font-size:3rem;
	font-weight:500;
	margin-bottom:30px;
}
@media screen and (max-width: 850px) {
	#mdBg{
		height: 200px;
	}
	.commonBox{
		margin:0 auto 60px;
	}
}
@media screen and (max-width: 640px) {
	#wrapper .main{
		margin-top:30px;
	}
	.bread{
		font-size:1.2rem;
	}
	#wrapper h1{
		font-size: 3rem;
	}
	#wrapper h1 span{
		font-size: 1.6rem;
	}
	#wrapper h2{
		font-size:2.2rem;
	}
	#wrapper h3{
		font-size:1.8rem;
	}
	.txt-size1{
		font-size:1.8rem;
	}
	.txt-size3{
		font-size:2.2rem;
		margin-bottom:20px;
	}
}
/*テンプレート*/
.wp-block-image{
	margin:auto;
}
.wp-block-media-text .wp-block-media-text__content{
	padding:0 0 0 5% !important;
}
.has-media-on-the-right .wp-block-media-text__content{
	padding:0 5% 0 0 !important;
}
#gallery-1 .gallery-item{
	box-sizing:border-box;
	padding:0 5px;
}
#gallery-1 .gallery-item img{
	padding:5px;
	box-sizing:border-box;
}
@media screen and (max-width: 780px) {
	.wp-block-columns{
		gap:0;
	}
	.wp-element-caption{
		margin-bottom:0 !important;
	}
}
@media screen and (max-width: 600px) {
	.wp-block-media-text > .wp-block-media-text__content{
		padding:0 0 0 0 !important;
		margin-top:30px;
	}
	.has-media-on-the-right.wp-block-media-text > .wp-block-media-text__content{
		padding:0 0 0 0 !important;
		margin-top:30px;
	}
}

/*私たちについて*/
#personBox{
	display:flex;
	flex-flow: row-reverse;
}
#personLeft{
	width:60%;
}
#personRight{
	width:36%;
	margin-right:4%;
}
.person-txt{
	margin-bottom:20px;
	line-height:2;
}
.person-name{
	font-size:2rem;
	font-weight:bold;
	text-align:right;
	margin-top:30px;
}
.person-name span{
	font-size:1.6rem;
	padding-right:20px;
}
.rinen-txt{
	font-size:3rem;
	font-weight:bold;
	display:table;
	margin:0 auto 30px;
}
.rinen-ul{
	max-width:920px;
	margin:auto;
}
.rinen-ul li{
	font-size:2rem;
	line-height:1.6;
	margin-top:20px;
	position:relative;
	border-bottom:3px dotted #afd6ff;
	padding:5px 10px 6px 34px;
	position:relative;
}
.rinen-ul li::before{
	position: absolute;
	top: 16px;
	left: 15px;
	content: "";
	width: 10px;
	height: 10px;
	background-color: #006aa3;
}
#gaiyoTable{
	width:100%;
}
#gaiyoTable th{
	border-bottom:2px solid #fff;
	color:#fff;
	background-color:#004ea2;
	padding:15px 20px 15px 60px;
	font-weight:500;
	text-align:left;
	width:180px;
}
#gaiyoTable td{
	padding:15px 20px;
	background-color:#eff6fb;
	border-bottom:2px solid #fff;
}
#ggmap2{
	position: relative;
	padding-bottom: 45%;
	height: 0;
	overflow: hidden;
	width:100%;
}
#ggmap2 iframe,
#ggmap2 object,
#ggmap2 embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#accessBox2{
	display:flex;
	margin-top:40px;
}
#accessLeft2{
	width:45%;
	margin-right:10%;
}
#accessRight2{
	width:45%;
}
#accessRight2 ul li{
	position:relative;
	padding-left:15px;
}
#accessRight2 ul li::before {
	content: '\f5e4';
	font-family: 'Font Awesome 5 Free';
	font-weight: bold;
	color: #00a0a3;
	padding-right: 10px;
/*
	position: absolute;
	top: 11px;
	left: 0;
	content: "";
	width: 8px;
	height: 8px;
	background-color: #00a0a3;
	border-radius: 100%;
*/
}
@media screen and (max-width: 750px) {
	#personBox{
		display:block;
	}
	#personLeft{
		width:100%;
	}
	#personRight{
		width:80%;
		max-width:400px;
		margin:30px auto 0;
	}
	.rinen-txt{
		font-size:2.4rem;
	}
	.rinen-ul li{
		font-size:1.6rem;
	}
	.rinen-ul li::before {
		top: 14px;
	}
	#gaiyoTable th{
		display:block;
		width:auto;
		padding:10px;
		border-bottom:none;
	}
	#gaiyoTable td{
		display:block;
		padding:10px 10px  20px 20px;
	}
	#accessBox2{
		display:block;
		max-width:300px;
		margin:20px auto 0;
	}
	#accessLeft2{
		width:100%;
		margin:0 auto 20px;
	}
	#accessRight2{
		width:100%;
		margin:auto;
	}
	#ggmap2{
		padding-bottom: 80%;
	}
}
/*働く環境*/
.workstyle-ul{
	display:flex;
	flex-wrap:wrap;
	margin-left:20px;
}
.workstyle-ul li{
	margin:0 20px 15px 0;
	padding:3px 15px 5px 25px;
	position:relative;
	background-color:#f1f2f7;
	border-radius:6px;
}
.workstyle-ul li:before {
	position: absolute;
	top: 14px;
	left: 10px;
	content: "";
	width: 9px;
	height: 9px;
	background-color: #4465b3;
	border-radius: 100%;
}
#benefitBox{
	display:flex;
	justify-content: space-between;
}
#benefitLeft, #benefitRight{
	width:48%;
	padding:20px 20px 30px;
/*
	background-color:#ffefef;
	border:3px solid #9d3030;
*/
	border:2px solid #0d71a5;
	background-image: radial-gradient(circle, #b6e1f4 1px, transparent 1px), radial-gradient(circle, #b6e1f4 1px, transparent 1px);
	background-size: 10px 20px;
	background-position: 0 0, 5px 10px;
}
/*
#benefitRight{
	width:48%;
	background-color:#effbff;
	padding:30px 20px 20px;
	border:3px solid #5ba4a4;
}
*/
.benefitTitle1, .benefitTitle2{
	text-align:center;
	font-size:3rem;
	font-weight:bold;
	margin-bottom:20px;
	color:#0d71a5;
	/*background-color:#9d3030;*/
}
/*
.benefitTitle2{
	text-align:center;
	font-size:2rem;
	font-weight:bold;
	margin-bottom:30px;
	color:#fff;
	background-color:#5ba4a4;
	padding:10px;
}
*/
.benefitImg{
	max-width:160px;
	margin:0 auto 30px;
}
.benefitTable1, .benefitTable2{
	width:100%;
	font-size:1.6rem;
	border-top:1px solid #a2c0d0;
}
.benefitTable1 th{
	width:180px;
	text-align:left;
	background-color:#f0faff;
	border-bottom:1px solid #a2c0d0;
	padding:10px 20px;
	line-height:1.4;
}
.benefitTable1 td{
	background-color:#fff;
	border-bottom:1px solid #a2c0d0;
	padding:10px 10px;
	line-height:1.4;
}

.benefitTable2 th{
	width:160px;
	text-align:left;
	background-color:#f0faff;
	border-bottom:1px solid #a2c0d0;
	padding:10px 20px;
	line-height:1.4;
}
.benefitTable2 td{
	background-color:#fff;
	border-bottom:1px solid #a2c0d0;
	padding:10px 10px;
	line-height:1.4;
}
.table-indent{
	text-indent:-1.6rem;
	padding-left:1.6rem;
}

@media screen and (max-width: 960px) {
	#benefitBox{
		display:block;
		max-width:700px;
		margin:auto;
	}
	#benefitLeft, #benefitRight{
		width:100%;
		margin:0 auto 30px;
	}
}
@media screen and (max-width: 640px) {
	.benefitTitle1, .benefitTitle2{
		font-size:2.2rem;
	}
	.benefitImg{
		max-width:100px;
	}
	.benefitTable1 th, .benefitTable2 th{
		width:auto;
		display:block;
		padding:10px;
	}
	.benefitTable1 td, .benefitTable2 td{
		display:block;
		padding:10px 10px 20px 20px;
	}
}
/*働く仲間一覧*/
#interviewList ul{
	display:flex;
	flex-wrap:wrap;
}
#interviewList ul li{
	width:29.3333%;
	margin:0 2% 60px;
}
#interviewList ul li a, #interviewList ul li span{
	display:block;
}
.interviewListTitle{
	font-size:2rem;
	font-weight:bold;
	padding:20px 0 10px;
}
.interviewListImg{
	margin:auto;
	box-shadow:3px 3px 20px #649bc8;
	object-fit: cover;
	aspect-ratio: 3/4;
}
.interviewListImg img{
	width:100%;
	height:100%;
	object-fit: cover;
	aspect-ratio: 3/4;
}
.interviewListTxt{
	position:relative;
	padding:0 20px 0 5px;
	background-image: linear-gradient(180deg, #231815 1px, transparent 1px); /* 罫線の色と太さ */
	background-size: 100% 2.5em; /* 行の高さ */
	line-height: 2.6em; /* 文字の高さ */
	padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
.interviewListIcon{
	position:relative;
}
.interviewListPen{
	position:absolute;
	top:-24px;
	right:-25px;
}
@media screen and (max-width: 960px) {
	#interviewList ul li{
		width:46%;
		margin:0 2% 60px;
	}
	.interviewListPen{
		width:30px;
		top:-15px;
		right:-18px;
	}
}
@media screen and (max-width: 640px) {
	#interviewList ul li{
		width:92%;
		margin:0 auto 60px;
	}
	.interviewListImg{
		box-shadow: 3px 3px 10px #649bc8;
	}
	.interviewListImg, .interviewListImg img{
		aspect-ratio: 1/1;
	}
}
/*働く仲間詳細*/
.main2{
	max-width:1920px;
	margin:auto;
/*
	background-image: radial-gradient(circle, #b6e1f4 1px, transparent 1px), radial-gradient(circle, #b6e1f4 1px, transparent 1px);
	background-size: 10px 20px;
	background-position: 0 0, 5px 10px;
*/
}
#workBox{
	width:100%;
	padding-top:42%;
	/*
	height:42vw;
	height: calc(100vh - 120px);*/
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin:90px auto 120px;
}
#workLeft, #workRight{

}
#workLeft::before {
	content: "";
	width: 80vw;
	padding-top:46%;
	/*height: calc(100% - 80px);*/
	display: block;
	position: absolute;
	left: 0;
	top: -80px;
	z-index: -1;
	background-color: #d7ebf4;
}
#workRight{
	max-width: 1100px;
	width: 96%;
	/*height: 100%;*/
	position: absolute;
	display: flex;
	/*align-items: center;*/
	top:10%;
}

.workImg{
	position:relative;
	width: 55%;
	height: calc(100% - 80px);
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
}
/*
#workBox{
	display:flex;
	align-items:center;
	margin:0 auto 80px;
	position:relative;
}
#workLeft{
	width: 50%;
	box-shadow:3px 3px 20px #649bc8;
	z-index:1;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 50%;
	width: 50%;
	max-width: 720px;
	margin-top:60px;
}
#workRight{
	color: #fff;
	width: 50%;
	padding: 80px 40px 80px 50px;
	position: relative;
	background: #ecfafd;
}
*/
.workImg img{
    object-fit: cover;
	object-position:center top;
    aspect-ratio: 1/1;
    width: 100%;
	height:100%;
}
#wrapper h2.workType{
	font-size:2.6rem;
	font-weight:bold;
	margin-bottom:20px;
	padding:20px 0 0;
	border:none;
}
#wrapper h2.workType::after{
	position:static;
	content:unset;
}
.workName{
	font-size:2.2rem;
	padding-left:30px;
	color:#040000;
	font-weight:bold;
}
.workYear{
	text-align:center;
	font-size:2rem;
	font-weight:500;
	background-color:#d7f5ef;
	/*display:inline;*/
	padding:10px 5px 12px;
}
.workArea{
	max-width:580px;
}
.workArea2{
	width:90%;
	box-shadow:2px 2px 10px #afafaf;
	background-color:#fff;
}
.workTxt{
	font-size:3.2rem;
	font-weight:500;
	line-height:2;
	margin-bottom:40px;
	padding-bottom:20px;
}
.qaBox{
	display:flex;
	flex-flow: row-reverse;
}
.qaLeft{
	width:50%;
}
.qaRight{
	width:45%;
	margin-right:5%;
}
.qaBox2{
	display:flex;
	margin:120px auto;
}
.qaLeft2{
	width:45%;
	margin:0 5%;
}
.qaRight2{
	width:45%;
}
.question-num{
	font-family: "Cormorant Garamond", serif;
	color:#004da0;
	font-size:3rem;
	font-weight:bold;
	line-height:1.6;
	position:relative;
	margin-bottom:60px;
}
.question-num::before{
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	width: calc(100% - 190px);
	height: 1px;
	background-color: #004da0;
}
.question-num::after{
	content: "";
	position: absolute;
	top: -18px;
	left: 190px;
	width: 40px;
	height: 100%;
	background-image: url('./images/recruit/pen.png');
	background-repeat: no-repeat;
	background-size: contain;
}
.num-sub{
	font-size:4rem;
}
.question-title{
	width:96%;
	color:#004da0;
	font-weight:bold;
	font-size:2.6rem;
	margin-bottom:20px;
}
.question-title2{
	font-size:2.4rem;
	font-weight:bold;
	background:linear-gradient(transparent 60%, #ffd9bc 60%);
	display:inline-block;
	margin-bottom:20px;
	padding-bottom:4px;
}
.question-txt{
	width:80%;
	font-size:2rem;
	line-height:2;
}
.question-txt2{
	width:94%;
	font-size:2rem;
	line-height:2;
}

#messageBg{
	width:100%;
	/*height:45vw;
	height: calc(100vh - 120px);*/
	padding-top:40%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin:120px auto 120px;
}
#messageLeft{
	width: 96%;
	position: absolute;
	display: flex;
	top:0;
	left:0;
}
#messageRight::before {
	content: "";
	width: 80vw;
	max-width:1920px;
	height: 100%;
	display: block;
	position: absolute;
	right: 0;
	top: 80px;
	z-index: -1;
	background-color: #d7ebf4;
	background-image: radial-gradient(circle, #b6e1f4 1px, transparent 1px), radial-gradient(circle, #b6e1f4 1px, transparent 1px);
	background-size: 10px 20px;
	background-position: 0 0, 5px 10px;
}

.messageImg{
}
#messageFrame{
	display:flex;
	flex-flow: row-reverse;
	padding:80px 0 60px 10%;
	background-image: linear-gradient(90deg, rgba(249, 226, 228, 1) 20%, rgba(252, 236, 209, 1));
	box-shadow:2px 2px 20px #afafaf;
}
#messageArea{
	width:60%;
	margin-left:5%;
}
#messageImg{
	width:35%;
}
#messageImg img{
	object-fit: cover;
	object-position: center top;
	aspect-ratio: 1/1;
	width: 100%;
	border-radius: 100%;
}
#message-num{
	position:relative;
	margin-bottom:40px;
}
#message-num::before{
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	width: calc(100% - 320px);
	height: 1px;
	background-color: #f15a63;
}
#message-num::after{
	content: "";
	position: absolute;
	top: -10px;
	left: 320px;
	width: 40px;
	height: 100%;
	background-image: url('./images/recruit/pen.png');
	background-repeat: no-repeat;
	background-size: contain;
}
#message-title{
	width:96%;
	font-size:3rem;
	font-weight:bold;
	margin-bottom:30px;
}
#message-txt{
	width:80%;
	font-size:2rem;
	line-height:2;
}
.message-txt img{
    object-fit: cover;
	object-position:center top;
    aspect-ratio: 1/1;
    width: 100%;
	border-radius:100%;
}
#otherBox{
	margin:180px auto 0;
	padding:60px 0 80px;
	background-color:#ddeaf5;
}
#interview-other{
	max-width:1200px;
	font-size:2.6rem;
	font-weight:bold;
	border-bottom:1px solid #004da0;
	text-align:center;
	margin:0 auto 30px;
	padding-bottom:5px;
}
@media screen and (max-width: 1360px) {
	#workBox{
		margin:90px auto 30px;
	}
	.workTxt{
		font-size:2.8rem;
	}
	.question-num{
		font-size:2.4rem;
		margin-bottom:30px;
	}
	.question-num::before {
		width: calc(100% - 155px);
	}
	.question-num::after{
		top:-23px;
		left:155px;
	}
	.num-sub{
		font-size:3.2rem;
	}
	.question-title, .question-title2, #message-title{
		font-size:2.2rem;
	}
	.question-txt, #message-txt{
		width:95%;
		font-size:1.6rem;
	}
	.question-txt2{
		width:100%;
		font-size:1.6rem;
	}
	#messageBg{
		margin:30px auto 0px;
		padding-top:50%;
	}
	#messageRight::before {
		height:90%;
	}
	#message-num img{
		width:240px;
	}
	#message-num::before{
		width: calc(100% - 260px);
	}
	#message-num::after{
		top: -18px;
		left: 260px;
	}
	#otherBox{
		margin:120px auto 0;
	}
}
@media screen and (max-width: 960px) {
	#workBox, #messageBg{
		padding-top:60%;
	}
	#workLeft::before{
		padding-top:65%;
	}
	.workTxt{
		font-size:2.4rem;
	}
	.workBg{
		width:60%;
	}
	#wrapper h2.workType{
		font-size:2rem;
	}
	.workName, .workYear{
		font-size:1.6rem;
	}
	#messageFrame{
		padding:60px 0 50px 5%;
	}
}
@media screen and (max-width: 850px) {
	#messageBg{
		padding:0;
	}
	#messageLeft{
		position:static;
	}
	#messageRight::before {
		height: 100%;
	}
	.qaBox{
		display:block;
	}
	.qaLeft ,.qaLeft2{
		width:94%;
		margin:auto;
	}
	.qaRight, .qaRight2{
		width:94%;
		max-width:600px;
		margin:30px auto 0;
	}
	.qaBox2{
		display:block;
		margin:60px auto;
	}
	#messageFrame{
		display:block;
	}
	#messageArea{
		width:100%;
		margin:0 auto 30px;
	}
	#messageImg{
		width:90%;
		max-width:300px;
		margin:auto;
	}
	.question-num::after{
		width:30px;
		top:-11px;
	}
	#message-num::after{
		width:30px;
		top: -5px;
	}
}
@media screen and (max-width: 640px) {
	#workBox{
		padding:0;
		display:block;
		margin:60px auto 80px;
	}
	#workLeft::before {
		top:-40px;
		padding-top:80%;
/*
		content:unset;
		position:static;
		width:auto;
*/
	}
	#workRight{
		position:static;
		margin:auto;
	}
	.workImg{
		position:static;
		width: 90%;
		height:auto;
		margin:auto;
	}
	.workBg{
		width:90%;
		margin:30px auto 0;
	}
	.workArea{
		max-width:100%;
		margin:auto;
	}
	.workArea2{
		margin:auto;
	}
	.workTxt{
		font-size:1.8rem;
		line-height:1.8;
		margin-bottom:10px;
	}
	#wrapper h2.workType{
		margin-bottom: 10px;
		padding: 10px 0 0;
	}
	.workYear{
		padding:5px 5px 6px;
	}
}
/*求人詳細*/
.md3-jobtype{
	background-color:#f3f5fb;
	padding:10px 0 10px 30px;
}
.jobsTable{
	width:100%;
	margin:0 auto 60px;
}
.jobsTable th{
	text-align:left;
	width:300px;
	border-bottom:1px solid #d8d8d9;
	padding:20px 10px 20px 40px;
}
.jobsTable td{
	border-bottom:1px solid #d8d8d9;
	padding:20px;
}
#jobs-none{
	display:table;
	margin:60px auto 100px;
	font-size:1.8rem;
	padding:0 10px;
}
@media screen and (max-width: 850px) {
	.jobsTable th{
		width:170px;
		padding:20px 10px 20px 20px;
	}
}
@media screen and (max-width: 640px) {
	.jobsTable th{
		display:block;
		width:auto;
		padding:10px;
	}
	.jobsTable td{
		display:block;
		border:none;
		padding:10px 10px 20px 20px;
	}
}
/*プライバシーポリシー*/
.pp-txt1{
    text-indent: -1.6rem;
    padding-left: 1.6rem;
	margin:10px 0 5px 2%;
}
@media screen and (max-width: 850px) {
	.pp-txt1{
	    text-indent: -1.4rem;
	    padding-left: 1.4rem;
	}
}
/*サイトマップ*/
.sitemapBox{
	display:flex;
	flex-wrap:wrap;
}
.sitemapBox li{
	width:29.3333%;
	margin:0 2% 30px;
}
.sitemapBox li a{
	display:block;
	color:#fff;
	background-color:#004ea2;
	padding:10px 10px 12px 30px;
	position:relative;
}
.sitemapBox li a::before{
	content: '\f30b';
	font-family: 'Font Awesome 5 Free';
	font-weight: bold;
	color: #fff;
	padding-right: 10px;
}
.sitemapBox li a:hover{
	background-color:#040000;
}
@media screen and (max-width: 1060px) {
	.sitemapBox li{
		width:46%;
	}
}
@media screen and (max-width: 640px) {
	.sitemapBox{
		display:block;
	}
	.sitemapBox li{
		width:96%;
	}
}

#ppTxt a{
	border-bottom:1px solid #040000;
	line-height: 1.4;
	display: inline-block;
}
#ppTxt a:hover{
	color:#004ea2;
	border-bottom:1px solid #004ea2;
}

/******************
お問い合わせ[PC]
******************/
/* contact form 7 */
input, textarea {
	font-size: 1.6rem;
	border: 1px solid #cccccc;
	outline: none;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	padding: 5px;
	font-family: Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
#contactTxt{
	text-align:center;
	margin:20pxpx auto 40px;
	font-size:2.0rem;
}
.kaigyo2{
	display:block;
}
.tel-btn{
	text-align:center;
	font-size:4rem;
	font-weight:bold;
	margin:0 auto 60px;
	color:#4466b3;
}
.tel-btn a{
	color:#4466b3;
	letter-spacing:0.2rem;
}
.siteLink{
	text-align:center;
	margin:0 auto 60px;
}
.siteLink a{
	display:inline-block;
	border:1px solid #323232;
	padding:10px 40px 10px 25px;
	position:relative;
}
.siteLink a::after {
	position: absolute;
	margin: auto;
	content: '';
	vertical-align: middle;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #323232;
	border-right: 2px solid #323232;
	-webkit-transform:translate(0,-50%) rotate(45deg);
	transform:translate(0,-50%) rotate(45deg);
	transition:.3s;
}
.siteLink a:hover{
	color:#fff;
	background-color:#323232;
}
.siteLink a:hover::after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
#contactForm{
	margin:0 auto;
	width:100%;
}
#contactForm input,
#contactForm select{
	/*-webkit-appearance: none;*/
	padding: 5px 1% 5px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	-moz-box-shadow: inset 1px 2px 5px -6px rgba(0,0,0,0.5);
	-webkit-box-shadow: inset 1px 2px 5px -6px rgba(0, 0, 0, 0.5);
	box-shadow: inset 1px 2px 5px -6px rgba(0,0,0,0.5);
	color: #323232;
	border:1px solid #777;
	background-color:#fff;
	position:relative;
	/*
	font-family:Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	*/
	font-family:"游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
#contactForm textarea{
	overflow: auto;
	height:120px;
	padding: 5px 1% 4px;
	line-height:1.1em;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	color: #323232;
	border:1px solid #777;
	width:90%;
	/*
	font-family:Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	*/
	font-family:"游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
input:focus, textarea:focus {
	outline: 2px solid #00f;
}
input[type=checkbox]:focus{
	outline:none;
}
.wpcf7-select{
	font-size:1.6rem;
}
#contactForm table{
	width:100%;
	border-spacing:0 10px;
	border-collapse: unset;
}
#contactForm tr{
	clear:both;
}
#contactForm th{
	position:relative;
	width:320px;
	text-align:left;
	font-weight:500;
	padding:20px;
	vertical-align:top;
	background-color:#eaf5ff;
	box-sizing:border-box;
}
#contactForm td{
	padding:20px 10px 20px 20px;
	background-color:#f9fcfd;
	box-sizing:border-box;
}
span.required{
	background-color:#f27e69;
	display:inline-block;
	color:white;
	padding:3px 4px 5px;
	margin-top:5px;
	position:absolute;
	right:12%;
	font-size:1.2rem;
	font-weight:bold;
	line-height:1;
}
#sendingBox{
	width: 96%;
	border-bottom: 1px solid #ccc;
	margin: auto;
	padding: 30px 0;
}
#sendingTxt{
	text-align:center;
	font-weight:bold;
	font-size:2rem;
}
#caveat{
	width:80%;
	line-height:1.4;
	font-size:1.4rem;
	color:#ff0000;
	display:table;
	text-align:center;
	margin:auto;
	text-indent: -1.4rem;
	padding-left: 1.4rem;
}
#formBtnBox{
	max-width:280px;
	width:90%;
	margin:40px auto 0;
	display:flex;
	justify-content: space-between;
}
.kakuninBtn{
	width:152px;
}
.kakuninBtn input{
	width:150px;
	height:46px;
	cursor:pointer;
	outline:none;
	background-color:#273a66;
	color:white;
	border:none;
	letter-spacing:1px;
	/*
	-moz-box-shadow: 0px 1px 1px rgba(000,000,000,0.3);  
	-webkit-box-shadow: 0px 1px 1px rgba(000,000,000,0.3);  
	box-shadow: 0px 1px 1px rgba(000,000,000,0.3);
	*/
	transition:.3s;
	font-weight:500;
	font-family:"游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
.kakuninBtn input:hover{
	background-color:#5d87d4;
}
.returnBtn input{
	height:46px;
	outline:none;
	border:none;
	padding:5px 10px;
	background-color:#ccc;
	border:1px solid #ccc;
	/*
	-moz-box-shadow: 0px 1px 1px rgba(000,000,000,0.3);  
	-webkit-box-shadow: 0px 1px 1px rgba(000,000,000,0.3);  
	box-shadow: 0px 1px 1px rgba(000,000,000,0.3);
	*/
	transition:.3s;
	font-weight:500;
	font-family:"游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
.returnBtn input:hover{
	cursor:pointer;
	background-color: #aaaaaa;
}
.confirmForm span.required{
	display:none;
}
#contactForm select{
	-webkit-appearance: checkbox;
}
::placeholder {
	font-size:1.4rem;
}
#formBox{
	margin:0 auto 30px;
}
.sent #formBox{
	display: none;
}
.sentout_message{
	margin:0 auto 80px;
}
/*
.sentout_message{
	display: none;
}
.sent .sentout_message{
	display: block;
}
*/
/*送信成功*/
div.wpcf7 form.sent .wpcf7-response-output{
	background:#d5edda;
	color:#185626;
	border:1px solid #c4e5cc !important;
	padding:10px 10px 10px 20px !important;
}
/*送信NG・失敗*/
div.wpcf7 form.failed .wpcf7-response-output,
div.wpcf7 form.aborted .wpcf7-response-output,
div.wpcf7 form.invalid .wpcf7-response-output,
div.wpcf7 form.unaccepted .wpcf7-response-output,
div.wpcf7 form.payment-required .wpcf7-response-output{
	background:#f7d7da;
	color:#711d26;
	border:1px solid #f4c6cb !important;
	padding:10px 10px 10px 20px !important;
} 
/*スパムなどで送信ブロックされた場合*/
div.wpcf7 form.spam .wpcf7-response-output{
	background:#fff2cf;
	color:#846314;
	border:1px solid #feedbd !important;
	padding:10px 10px 10px 20px !important;
}
#contactForm .wpcf7-not-valid {
	background: #ffebef !important;
}
.wpcf7 .wpcf7-submit:disabled{
	background-color:#004ea2;
}
span.wpcf7-radio, span.wpcf7-checkbox{
  display: flex;
  flex-direction: column;
}
span.wpcf7-list-item{
	margin:5px 0;
}
.wpcf7-not-valid-tip{
	font-size:1.4rem !important;
}
#sendingCheck{
	font-size:1.6rem;
	line-height:1.4;
	display:table;
	margin:auto;
}
#sendingCheck .wpcf7-list-item input{
	display:block;
	float:left;
	margin-top:5px;
}
#sendingCheck .wpcf7-list-item-label{
	padding-left:2rem;
	display:block;
}
.hosoku-txt,.hosoku-txt1,.hosoku-txt2{
	font-size:1.4rem;
	line-height:1.4;
}
.hosoku-txt{
	margin-left:8px;
}
.hosoku-txt1{
	margin-top:10px;
	padding-left: 1.4rem;
	text-indent: -1.4rem;
}
.hosoku-txt2{
	color:#f00;
	margin-top:10px;
	padding-left: 1.4rem;
	text-indent: -1.4rem;
}
.hosoku-txt3{
	color:#f00;
	margin-top:10px;
	padding-left: 14rem;
	text-indent: -14rem;
}
.hosoku-doui{
	padding:20px 0 10px 10px;
}
#formTel{
	font-size:120%;
	font-weight:bold;
	margin:20px auto 30px;
}
#recruitMain .sentout_message h2{
	margin: 0 auto 30px;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.2;
	position: relative;
	padding: 5px 8px 8px;
	border-bottom: 2px solid #0b9b93;
	text-align:left;
}
#formLink{
	margin-top:30px;
}
.fm-ck .wpcf7-list-item{
	display:block;
}
.birthday-txt1{
	display:inline;
	padding-right:20px;
}
.birthday-txt2{
	padding-left:4px;
}
.cl-error .wpcf7-not-valid-tip{
	display:none;
}
.cl-error .cl-error-message{
	color:#dc3232;
	font-size:1.4rem;
	margin-top:5px;
	display: none;
}
.cl-error:has(.wpcf7-not-valid-tip) .cl-error-message {
	display: block;
}

@media screen and (max-width: 850px) {
	#contactTxt{
		font-size:1.6rem;
		display:table;
		text-align:left;
		margin:0px auto 20px;
	}
	.tel-btn{
		font-size:3.5rem;
	}
	#contactForm{
		width:100%;
	}
	#contactForm table{
		border-top:none;
	}
	#contactForm th{
		width:100%;
		display:block;
		padding:10px 0 10px 10px;
		border:none;
	}
	#contactForm td{
		width:100%;
		display:block;
		padding:15px 10px 30px 20px;
		border-bottom:none;
	}
	#contactForm input.wpcf7-text, #contactForm input.wpcf7-email, #contactForm input.wpcf7-textarea {
		width:90%;
		max-width:400px;
	}
	#contactForm input.p-postal-code{
		max-width:auto;
		width:auto;
	}
	span.required{
		position:static;
		margin-left:20px;
	}
	.hosoku-txt{
		margin-top:10px;
		display:block;
	}
	.hosoku-doui{
		text-align:center;
	}
}
@media screen and (max-width: 430px) {
	.kaigyo2{
		display:inline;
	}
	.tel-btn{
		display:table;
		text-align:left;
		font-size:9vw;
	}
}

@page{
	margin: 16mm 10mm;
}

@-moz-document url-prefix(){
@page{
	margin: auto;
}
}

@media screen and (-webkit-min-device-pixel-ratio:0){
@page{
	margin: auto;
}
}