/******************
テンプレート全体[共通]
******************/
.wp-block-image{
	width:100%;
	margin:0 0 20px 0;
}
.wp-block-column:not(:first-child){
	margin:0!important;
}
.wp-block-column:not(:first-child){
	margin:0!important;
}
.wp-block-column:nth-child(2n){
	margin:0!important;
}
.picLeft , .picRight{
	width:100%;
	display:block!important;
	margin:0 auto;
	overflow:hidden;
}
.picLeft .wp-block-media-text__media{
	float:left;
	display:block!important;
	width:45%;
}
.picLeft .wp-block-media-text__content{
	float:right;
	display:block!important;
	width:50%;
	padding:0!important;
}
.picRight .wp-block-media-text__media{
	float:right;
	display:block!important;
	width:45%;
}
.picRight .wp-block-media-text__content{
	float:left;
	display:block!important;
	width:50%;
	padding:0!important;
}
.infoGallrey{
	display:block!important;
	width:100%;
	margin:0 auto!important;
	overflow:hidden;
}
.infoGallrey .wp-block-image{
	float:left;
	width:32%!important;
	margin:0 2% 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(3n){
	float:right;
	margin:0 0 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(3n+1){
	clear:both;
}
.infoGallrey .wp-block-image img{
	max-width:100%;
	width:100%;
	margin:0 auto;
	object-fit:cover!important;
	height:330px!important;
	flex: unset!important;
}
.blocks-gallery-grid .blocks-gallery-item,  .wp-block-gallery .blocks-gallery-item {
    flex-grow: initial!important;
}
li.blocks-gallery-item {
    height: 210px;
}
.blocks-gallery-grid .blocks-gallery-image, .blocks-gallery-grid .blocks-gallery-item, .wp-block-gallery .blocks-gallery-image, .wp-block-gallery .blocks-gallery-item {
    flex-grow: initial!important;
}
.spTxt{
	display:none;
}
@media screen and (max-width: 1260px) {
.infoGallrey .wp-block-image img{
	height:230px!important;
}
}
@media screen and (min-width: 751px) and (max-width: 1140px) {
li.blocks-gallery-item {
    height: 184px;
}
}
@media screen and (max-width: 850px) {
.spTxt{
	display:block;
	font-size:85%;
	padding:0 0 10px 0;
}
}
@media screen and (max-width: 770px) {
.picLeft .wp-block-media-text__media{
	float:none;
	width:100%;
	margin:0 auto 25px auto!important;
}
.picLeft .wp-block-media-text__content{
	float:none;
	width:100%;
}
.picRight .wp-block-media-text__media{
	float:none;
	width:100%;
	margin:0 auto 25px auto!important;
}
.picRight .wp-block-media-text__content{
	float:none;
	width:100%;
}
li.blocks-gallery-item {
    height: 160px;
}
.infoGallrey .wp-block-image{
	width:49%!important;
	margin:0 0 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(2n){
	float:right;
	margin:0 0 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(3n){
	float:left;
}
.infoGallrey .wp-block-image:nth-child(6n){
	float:right;
}
.infoGallrey .wp-block-image:nth-child(2n+1){
	clear:both;
}
.infoGallrey .wp-block-image:nth-child(3n+1){
	clear:inherit;
}
.infoGallrey .wp-block-image img{
	height:220px!important;
}
}
@media screen and (max-width: 540px) {
.infoGallrey .wp-block-image img{
	height:160px!important;
}
}
@media screen and (max-width: 420px) {
.infoGallrey .wp-block-image img{
	height:130px!important;
}
}

* html .commonBox {
	height: 1%;
}

img.aligncenter{
	display: block;
	margin:0 auto;
	float:none;
}

img.alignright{
	margin:0 0 0 auto;
	display:block;
	float:none;
}

img.alignleft{
	text-align: left;
	float:none;
}
.maruTxt{
	text-indent: -0.6em;
	padding-left: 12px;
}

/******************
中ページ共通項目[共通]
******************/

input,textarea{
	font-size: 1.8rem;
	border: 1px solid #cccccc;
	outline: none;
}
.bread{
	clear:both;
	margin: 0 auto;
	font-size:1.25rem;
	line-height:165%;
	width:100%;
	padding:60px 0 0 0;
}
.bread span{
	padding:0 10px;
}
.bread a{
	color:var(--themecolor);
	transition:.3s;
}
.bread a:hover{
	color:var(--hovercolor);
}
.bread a br{
	display:none;
}
.h20{
	clear:both;
	height:40px;
}
@media screen and (max-width: 1400px) {
.bread{
	padding:50px 0 0 0;
}
}
@media screen and (max-width: 1000px) {
.p70s30{
	height:70px!important;
}
.voiceMain .p70s30{
	height:30px!important;
}
}
@media screen and (max-width: 770px) {
.bread{
	font-size:1.15rem;
}
.p70s30{
	height:50px!important;
}
.s10{
	height:10px!important;
}
}
@media screen and (max-width: 540px) {
.p70s30{
	height:30px!important;
}
.voiceMain .p70s30{
	height:20px!important;
}
}
@media screen and (max-width: 480px) {
.bread{
	padding:30px 0 0 0;
}
.voiceMain .bread{
	padding:50px 0 0 0;
}
}


h2{
	display: block;
  	font-size: 3.5rem;
  	letter-spacing: 0.4rem;
  	line-height: 4rem;
  	position: relative;
  	font-weight: 400;
  	text-align: center;
  	position: relative;
	margin:0 auto 60px auto;
}
h2 span{
	display: block;
  	font-size: 2.1rem;
  	letter-spacing: 0.3rem;
  	position: relative;
  	text-align: center;
	line-height:1.9;
	font-weight:500;
	font-family: var(--enLg);
}
h3 {
	clear: both;
    font-size: 2.7rem;
    line-height: 160%;
    letter-spacing: 3px;
    position: relative;
	font-weight:500;
	margin:0 auto 60px auto;
}
h3::before{
	content: "";
  	display: block;
  	position: absolute;
  	left: 0;
  	bottom: -20px;
  	background-color: var(--hovercolor);
  	width: 50px;
  	height: 3px;
}
.h3sub{
	font-family: "Manrope", serif;
	font-size:1.5rem;
	letter-spacing: 1px;
	font-weight:600;
	line-height:1.7;
}
.h3subRec{
	font-size:3rem;
	letter-spacing: 1.4px;
	font-weight:500;
	color:var(--themecolor);
	margin:0 auto 10px auto;
}
.h3Rec{
	color:var(--basecolor);
	font-size: 1.7rem;
	font-family: "Manrope", serif;
}
.h3Rec::before{
  	display: none;
}
.h3Wrapper{
	width:100%;
	margin:0 auto 90px auto;
}
.nbh3Wrapper{
	margin:0 auto 30px auto;
}
.h3wc{
	text-align:center;
}
.h3fe{
	color:#fff;
}
h4{
	clear: both;
    color: var(--themecolor);
    margin: 5px auto 25px auto;
    font-size: 2.4rem;
    font-weight: 500;
    letter-spacing: 2px;
	position:relative;
	padding:0 0 15px 0;
	line-height:4rem;
}
h4::before {
   	content: "";
  	display: block;
  	position: absolute;
  	left: 0;
  	bottom: 0;
  	background-color: #f2f5f9;
  	width: 100%;
  	height: 2px;
  	border-radius: 2px;
}
h4::after {
	content: "";
  	display: block;
  	position: absolute;
  	left: 0;
  	bottom: 0;
  	background-color: var(--hovercolor);
  	width: 10%;
  	height: 2px;
  	border-radius: 2px;
}
h5{
	clear: both;
	margin: 10px auto 20px auto;
	font-size:2.1rem;
	font-weight: 400;
	position: relative;
	letter-spacing: 1px;
	color:var(--basecolor);
	border-left:4px solid var(--themecolor);
	padding:0 0 3px 10px;
}
h6{
	clear:both;
	font-size:1.9rem;
	color:var(--themecolor);
	font-weight:500;
	line-height:170%;
	margin:15px 0 ;
	letter-spacing:1px;
}
@media screen and (max-width: 1400px) {
h3 {
    font-size: 2.5rem;
	margin:0 auto 30px auto;
}
.h3sub{
	font-size:1.7rem;
}
}
@media screen and (max-width: 1000px) {
h3 {
    font-size: 2.3rem;
	line-height: 2.8rem;
    letter-spacing: 0.2rem;
}
.h3sub {
    font-size: 1.6rem;
}
.h3subRec {
    font-size: 2.5rem;
    letter-spacing: 1px;
	line-height:1;
	margin:0 auto 5px auto;
}
h4{
    font-size: 2rem;
    letter-spacing: 1px;
	line-height:3rem;
	padding: 0 0 10px 0;
}
h4::after {
    width: 30%;
}
h5{
	font-size:1.8rem;
}
h6{
	font-size:1.7rem;
	letter-spacing:0;
}
}
@media screen and (max-width: 781px) {
h2{
  	font-size: 3rem;
  	letter-spacing: 0.2rem;
  	line-height: 3.9rem;
	margin:0 auto 30px auto;
}
h2 span{
  	font-size: 1.8rem;
}
.h3Wrapper {
    margin: 0 auto 50px auto;
}
.nbh3Wrapper{
	margin:0 auto 20px auto!important;
}
h3 {
    font-size: 2.2rem;
}
.h3sub {
    font-size: 1.5rem;
}
h3::before{
  	bottom: -15px;
  	width: 70px;
}
}

@media only screen and (max-width:640px) {

}
@media only screen and (max-width:480px) {
h2{
  	font-size: 2.5rem;
	line-height: 3.2rem;
  	letter-spacing: 0.1rem;
}
.h3Wrapper {
    margin: 0 auto 40px auto;
}
h3 {
    font-size: 2rem;
}
.h3sub {
    font-size: 1.4rem;
}
h3::before{
  	bottom: -10px;
}
.h3subRec {
    font-size: 2.3rem;
}
.h3Rec {
  	font-size: 1.6rem;
}
}
@media only screen and (max-width:400px) {
h2{
  	font-size: 2.3rem;
}
}


.editPostLink{
	clear:both;
	width:10%;
}
.editPostLink a{
	width:100%;
	display:block;
	padding:1px 0;
	text-align:center;
	background-color:#666;
	color:#fff;
	border-radius:7px;
	-moz-border-radius:7px;
	-webkit-border-radius:7px;
	font-size:80%;
	margin:10%  0 ;
}

.editPostLink a:hover{
	background-color:#000;
	text-decoration:none;
}

@media screen and (max-width: 770px) {
.editPostLink{
	float:none;
	display:block;
	width:100%;
}
}

.pagination {
	clear:both;
	padding:20px 0;
	position:relative;
	font-size:11px;
	line-height:13px;
	margin-bottom:20px;
}

.pagination span, .pagination a {
	display:block;
	float:left;
	margin: 2px 2px 2px 0;
	padding:6px 9px 5px 9px;
	text-decoration:none;
	width:auto;
	color:#3e3e3e;
	background: #ddd;
}
 
.pagination a:hover{
	color:#fff;
	background:var(--hovercolor);
}
 
.pagination .current{
	padding:6px 9px 5px 9px;
	background:var(--themecolor);
	color:#fff;
}

/************
会社情報
************/
.messege{
	width:100%;
	margin:0 auto 100px auto;
}
.messege .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
}
.messegeL{
	width:350px;
}
.messegeR{
	width:830px;
	transition-delay:.2s;
}
.messegeL .wp-block-group__inner-container , .messegeR .wp-block-group__inner-container {
  width: 100%;
  display: block;
}
.messegeTtl{
	font-size:2.3rem;
	font-weight:500;
	margin:0 auto 40px auto;
}
.ceoName{
	margin:40px 0 0 0;
	overflow:hidden;
	font-size:2rem;
	text-align:right;
	letter-spacing:0.1rem;
}
.ceoName span{
	font-size:1.5rem;
	padding:0 15px 0 0;
}
.gaiyou{
	width:100%;
	margin:0 auto ;
}
.gaiyou .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
}
.gaiyouL{
	width:350px;
}
.gaiyouR{
	width:830px;
	transition-delay:.2s;
}
.gaiyouL .wp-block-group__inner-container {
  width: 100%;
  display: block;
}
.comProf{
	width:100%;
	margin:0 auto;
}
.comProf table{
	width:100%;
	border-collapse:collapse;
}
.comProf table th{
	width:25%;
	border-bottom:1px solid #ccc;
	padding:3% 2% 3% 0 ;
	text-align:left;
	vertical-align:top;
}
.comProf table td{
	width:73%;
	border-bottom:1px solid #ccc;
	padding:3% 0;
}

@media screen and (max-width: 1400px) {
.messegeL{
	width:27vw;
}
.messegeR{
	width:55vw;
}
.gaiyouL{
	width:27vw;
}
.gaiyouR{
	width:55vw;
}
}

@media screen and (max-width: 1000px) {
.messege{
	margin:0 auto 70px auto;
}
.messegeL {
    width: 30vw;
}
.messegeR {
    width: 53vw;
}
.gaiyouL {
    width: 30vw;
}
.gaiyouR {
    width: 53vw;
}
}
@media screen and (max-width: 781px) {
.messege .wp-block-group__inner-container {
    display:block;
}
.messegeL {
    width: 100%;
	margin:0 auto;
}
.messegeR {
    width: 100%;
	margin:0 auto;
}
.messegeTtl {
    font-size: 2rem;
    margin: 0 auto 20px auto;
}
.gaiyou .wp-block-group__inner-container {
    display:block;
}
.gaiyouL {
    width: 100%;
	margin:0 auto;
}
.gaiyouR {
    width: 100%;
	margin:-20px auto 0 auto;
}
.ceoName {
    margin: 20px 0 0 0;
    font-size: 1.85rem;
}
.comProf table th {
	display:block;
    width: 100%;
    border-bottom:none;
    padding: 3% 0 0 0;
    font-weight:500;
}
.comProf table td {
	display:block;
    width: 100%;
    padding: 0 0 3% 0;
}
}
@media screen and (max-width: 640px) {
.messege{
	margin:0 auto 60px auto;
}
.messegeL {
	margin:0 auto 30px auto;
}
}
@media screen and (max-width: 480px) {
.gaiyou{
	margin:0 auto 10px auto;
}
.messegeTtl {
    font-size: 1.85rem;
}
}

/************
サービス
************/
.serviceTxt{
	text-align:center;
}
.serviceOneWrapper{
	width:100%;
	margin:0 auto 40px auto;
}
.serviceOneWrapper .wp-block-columns{
	align-items:center!important;
}
.serviceOne{
	clear:both;
	width:96%;
	margin:2%;
	position:relative;
	background:#fff;
	padding:3%;
	box-sizing:border-box;
	box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.25);
	-moz-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.25);
	justify-content:space-between;
	align-items:center!important;
}
.serviceOneL{
	width:260px;
}
.serviceOneR{
	width:calc(100% - 310px);
	margin:0 0 0 50px;
}
.serviceOne:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: unset!important;
    flex-grow:unset!important;
}
.serviceOneL .serviceRilla{
	width:180px;
	margin:0 auto;
}
.serviceOneL .serviceRilla img{
	width:100%;
	max-width:100%;
	margin:0 auto!important;
	height:auto;
}
.serviceOneL .wp-block-image {
  	margin:0 auto!important;
}
.serviceRTtl{
	color:var(--themecolor);
	font-size:1.9rem;
	font-weight:500;
	margin:0 auto 15px auto;
}
.serviceMore{
	position:relative;
	float:right;
	width:42%;
	margin:25px 0 0 0;
	overflow:hidden;
}
.serviceMore a{
	position:relative;
	display:block;
	color:var(--themecolor);
	border:2px solid var(--themecolor);
	background:#fff;
	box-sizing:border-box;
	padding:8px 3%;
	text-align:center;
	transition:.3s;
	font-size:1.55rem;
}
.serviceMore a::before{
	position:absolute;
	content:'';
	display: inline-block;
	vertical-align: middle;
	top: 39%;
	right: 4%;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid var(--themecolor);
	transition:.3s;
}
.serviceMore a:hover{
	background:var(--themecolor);
	color:#fff;
	text-decoration:none;
}
.serviceMore a:hover::before{
	right: 3%;
	border-left: 6px solid #fff;
}
.serviceRSubTxt{
	text-indent: -1.7rem;
  	padding: 0 0 0 17px;
}
ul.hassei{
	width:100%;
	margin:0 auto;
	position:relative;
}
ul.hassei li{
	position:relative;
	padding:0 0 10px 15px;
	width:98%;
}
ul.hassei li:last-child{
	padding:0 0 0 15px;
}
ul.hassei li::before{
	position:absolute;
	content:'';
	background:var(--themecolor);
	width:8px;
	height:8px;
	border-radius:100%;
	left:0.1px;
	top:14px;
}
.serviceMain{
	margin:0 auto 80px auto!important;
}
.serviceMain img{
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
}
.gosoudanTxt{
	font-size:2.7rem;
	text-align:center;
	margin:0 auto 50px auto;
	color:var(--themecolor);
	letter-spacing:0.3rem;
	line-height:3.8rem;
}
.zaiTai .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
	margin:0 auto 80px auto;
}
.zaitakuTaisyou{
	background:#fff;
	border:1px solid var(--themecolor);
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	padding:3% 4%;
	box-sizing:border-box;
	width:47%;
}
.zaitakuTaisyou .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:0 auto;
	flex-direction: column;
}
.zaitakuTaisyoPic{
	width:22%;
	margin:0 auto 30px auto!important;
}
.zaitaiNaka{
	width:100%;
	margin:0 auto;
}
.zaitaiNaka .wp-block-group__inner-container{
	width:100%;
	display:block;
	margin:0 auto;
}
.zaitakuTaisyouTtl{
	color:var(--themecolor);
	font-weight:500;
	font-size:1.7rem;
	margin:0 auto 10px auto;
	text-align:center;
}
.zaitakuTaisyouTtl br{
	display:none;
}
.flowWrapper .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
	margin:0 auto 60px auto;
}
.flowL{
	width:60%;
}
.flowR{
	width:calc(100% - 68%);
	margin:0 0 0 8%;
	transition-delay:.2s;
}
.flow {
  display: flex;
  justify-content: center;
  align-items: center;
}
.flow ul {
  padding: 0;
}
.flow li {
  list-style-type: none;
}
.flow dd {
  margin-left: 0;
}
.flowNaka {
  position: relative;
}
.flowNaka::before {
  content: "";
  width: 10px;
  height: 100%;
  background: #efefef;
  margin-left: -110px;
  display: block;
  position: absolute;
  top: 0;
  left: 120px;
  border-radius: 20px;
}
.flowNaka > li {
  position: relative;
}
.flowNaka > li:not(:last-child) {
  margin-bottom: 60px;
}
.flowNaka > li .icon {
  font-size: 1.7rem;
  width: 3.6rem;
  height: 3.6rem;
  line-height: 3.5rem;
  text-align: center;
  font-weight: 500;
  border-radius: 100vh;
	-moz-border-radius: 100vh;
	-webkit-border-radius: 100vh;
  color: #fff;
  background:  var(--themecolor);
  display: inline-block;
  margin-right: 15px;
}
.flowNaka > li dl {
  padding-left: 90px;
  position: relative;
}
.flowNaka > li dl::before,
.flowNaka > li dl::after {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
}
.flowNaka > li dl::before {
  width: 10px;
  height: 10px;
  margin-top: -3px;
  background: var(--themecolor);
  border-radius: 50%;
  left: 10px;
}
.flowNaka > li dl::after {
  width: 50px;
  border-bottom: 1px dashed #878787;
  position: absolute;
  left: 25px;
}
.flowNaka > li dl dt {
  font-size: 1.8rem;
  font-weight: 500;
  color: var(--themecolor);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}
.flowR .wp-block-group__inner-container{
	width:100%;
	display:block;
	margin:0 auto;
}
.flowR img{
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
}
.feeWrapper .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
}
.feeL , .feeR{
	background:#eff6fc;
	padding:4% 5%;
	box-sizing:border-box;
	width:47%;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
}
.feeR{
	transition-delay:.2s;
}
.feeL .wp-block-group__inner-container , .feeR .wp-block-group__inner-container{
	width:100%;
	display:block;
}
.feeTtl{
	background:var(--hovercolor);
	color:#fff;
	text-align:center;
	padding:5px 3%;
	width:100%;
	box-sizing:border-box;
	margin:0 auto 10px auto;
	font-size:1.75rem;
	font-weight:500;
}
.feeSubTtl{
	margin:0 auto 25px auto;
	font-weight:500;
}
.feeTb table{
	width:100%;
	border-collapse:collapse;
}
.feeTb table tr{
	width:100%;
	border-bottom:1px solid #91b4ce;
	overflow:hidden;
}
.feeTb table tr:first-child{
	border-top:1px solid #91b4ce;
}
.feeTb table th{
	width:71%;
	padding:3% 2%;
	font-weight:400;
	text-align:left;
	vertical-align:top;
}
.feeTb table td{
	width:21%;
	padding:3% 2%;
	text-align:right;
}
.kakaritsukeUp .wp-block-group__inner-container{
	width:100%;
	display:flex;
	margin:0 auto 70px auto;
	justify-content:space-between;
}
.kakaritsukeUpL{
	width:63%;
}
.kakaritsukeUpR{
	width:calc(100% - 70%);
	margin:0 0 0 7%;
}
.kakaritsukeUpL .wp-block-group__inner-container , .kakaritsukeUpR .wp-block-group__inner-container{
	width:100%;
	display:block;
	margin:0 auto ;
}
.kakaritsukeTtl{
	position:relative;
	margin:0 auto 15px auto;
	font-weight:500;
	font-size:1.8rem;
	padding:0 0 0 22px;
}
.kakaritsukeTtl::before{
  	content:'';
  	transition: 0.3s;
  	position: absolute;
  	left:0.1px;
  	top: 10px;
	width:13px;
	height:13px;
	border-radius:50%;	
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
  	background:var(--themecolor);
}
.kakaritsukeUpR img{
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
}
.meritWrapper .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.meritOne .wp-block-group__inner-container{
	width:100%;
	display:block;
}
.meritOne {
	padding:3%;
	border: 3px solid #eee;
	background:#fafdff;
	position: relative;
	z-index: 0;
	width:46%;
	box-sizing:border-box;
	margin:0 auto 4% auto;
}
.meritOne:before {
	border-top:3px solid var(--themecolor);
	border-left:3px solid var(--themecolor);
	content: '';
	display: block;
	position: absolute;
	top: -3px;
	left: -3px;
	width: 20px;
	height: 20px;
	z-index: 1;
}
.meritOneUp .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:0 auto 15px auto;
}
.meritTtlWrapper .wp-block-group__inner-container{
	margin:0 auto;
}
.meritTtlWrapper{
	position: relative;
  	z-index: 3;
  	width: 120px;
  	max-width: calc(100% - 70%);
  	padding: 0 0 7px 10px;
  	font-weight: 600;
  	font-size: 1.5rem;
	color:var(--themecolor);
	margin:0 0 10px 0;
}
.meritTtlWrapper::before {
  	content: "";
  	display: block;
  	position: absolute;
  	bottom: 0;
  	left: 0;
  	z-index: -1;
  	width: 100%;
  	height: 6px;
  	border-radius: 77% 23% 97% 3% / 0% 70% 30% 100%;
  	background: linear-gradient(to right, rgb(153,159,218) 0%, rgb(173,217,237) 100%);
}
.meritTtl{
	margin:0 auto 15px auto;
	font-weight: 500;
  	font-size: 2rem;
	color:var(--themecolor);
}
.meritRSubTxt{
	text-indent: -1.6rem;
  	padding: 3px 0 0 17px;
	font-size:1.45rem;
	line-height:2.4rem;
}
.kktMarker{
	background: linear-gradient(transparent 20%,#faff6b 20%);
	font-weight:500;
}
.dxWrapper{
	width:100%;
	margin:0 auto;
}
.dxWrapper .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
}
.dxL{
	width:65%;
}
.dxL .wp-block-group__inner-container{
	width:100%;
	display:block!important;
}
.dxR{
	width:calc(100% - 72%);
	margin:0 0 0 7%;
}
.dxR img{
	width:95%;
	margin:0 auto;
	border:1px solid #ccc;
	display:block;
	padding:2%;
}
ul.dxList{
	width:100%;
	margin:0 auto 25px auto;
	position:relative;
}
ul.dxList li{
	width:97%;
	position:relative;
	padding:0 0 15px 15px;
}
ul.dxList li::before{
	position:absolute;
	content:"";
	background:var(--themecolor);
	border-radius:50%;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	left:0.1px;
	top:13px;
	width:9px;
	height:9px;
}
.dxSubTxt{
	font-size:90%;
}
@media screen and (max-width: 1200px) {
.serviceMore{
	width:55%;
}
}
@media screen and (max-width: 1000px) {
.serviceOne{
	padding:5%;
}
.serviceOneL {
    width: 200px;
}
.serviceOneR {
    width: calc(100% - 240px);
    margin: 0 0 0 40px!important;
}
.serviceMore{
	width:70%;
}
.serviceMain{
	margin:0 auto 60px auto!important;
}
.gosoudanTxt{
	font-size:2.5rem;
	margin:0 auto 40px auto;
	letter-spacing:0.2rem;
	line-height:3rem;
}
.zaiTai .wp-block-group__inner-container {
    margin: 0 auto 60px auto;
}
.zaitakuTaisyou .wp-block-group__inner-container{
    margin: 0 auto;
}
.flowL{
	width:55%;
}
.flowR{
	width:calc(100% - 63%);
}
.flowNaka > li .icon {
    font-size: 1.65rem;
    width: 3rem;
    height: 3rem;
    line-height: 3rem;
	margin-right:10px;
}
.kakaritsukeUpL{
	width:58%;
}
.kakaritsukeUpR{
	width:calc(100% - 63%);
	margin:0 0 0 5%;
}
.meritTtlWrapper {
    width: 180px;
    max-width: calc(100% - 50%);
}
.meritTtl {
    font-size: 1.8rem;
}
}
@media screen and (max-width: 850px) {
.serviceTxt br{
    display:none;
}
.feeWrapper .wp-block-group__inner-container {
    display: block;
}
.feeL, .feeR {
    padding: 5%;
    box-sizing: border-box;
    width: 100%;
    border-radius: 15px;
    -moz-border-radius: 15px;
    -webkit-border-radius: 15px;
}
.feeL{
	margin:0 auto 20px auto;
}
}
@media screen and (max-width: 781px) {
.serviceOneWrapper{
	margin:0 auto 20px auto;
}
.serviceTxt{
    text-align:left;
}
.serviceOne{
	display:block!important;
	padding:7%;
	overflow:hidden;
}
.serviceOneL {
    margin:0 auto 20px auto!important;
}
.serviceOneR {
    width:100%;
	margin:0 auto!important;
}
.serviceMore{
	width:100%;
	margin: 20px auto 0 auto;
}
.serviceMore a {
    padding: 12px 3%;
}
.serviceMain{
	margin:0 auto 50px auto!important;
}
.serviceMain img{
	object-fit:cover;
	height:400px!important;
}
.gosoudanTxt{
	font-size:2.2rem;
	margin:0 auto 30px auto;
}
.zaiTai .wp-block-group__inner-container {
    display: block;
}
.zaitakuTaisyou {
    padding:4%;
    width: 100%;
	margin:0 auto 20px auto;
}
.zaitakuTaisyou:last-child {
	margin:0 auto;
}
.zaitakuTaisyoPic {
    width: 15%;
}
.flowWrapper .wp-block-group__inner-container {
    display: block;
    margin: 0 auto 50px auto;
}
.flowL{
	width:100%;
	margin:0 auto 30px auto;
}
.flowR{
	width:100%;
	margin:0 auto;
}
.flowNaka > li dl::after {
    width: 35px;
}
.flowNaka > li dl {
    padding-left: 70px;
}
.flowR .wp-block-group__inner-container{
	display:flex;
	justify-content:space-between;
}
.flowR .wp-block-group__inner-container .wp-block-image{
	width:49%;
}
.flowR img {
    border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
	object-fit:cover;
	height:320px!important;
}
.kakaritsukeUp .wp-block-group__inner-container{
	display:block;
	margin:0 auto 50px auto;
}
.kakaritsukeUpL{
	width:100%;
	margin:0 auto 30px auto;
}
.kakaritsukeUpR{
	width:100%;
	margin:0 auto;
}
.meritWrapper{
	margin:0 auto 50px auto;
}
.meritWrapper .wp-block-group__inner-container {
    display:block;
}
.meritOne {
    padding: 5%;
    width: 100%;
}
.dxWrapper .wp-block-group__inner-container{
	display:block;
}
.dxL{
	width:100%;
	margin:0 auto 25px auto;
	overflow:hidden;
}
.dxR{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
ul.dxList{
	margin:0 auto 10px auto;
}
ul.dxList li::before{
	top:11px;
}
}
@media screen and (max-width: 640px) {
.serviceOneL .serviceRilla {
    width: 150px;
}
.serviceOne{
	width: 94%;
    margin: 2% auto;
}
.serviceMain img{
	height:350px!important;
}
.zaitakuTaisyou {
    padding:6%;
}
.zaitakuTaisyoPic {
    width: 22%;
}
.zaitakuTaisyouTtl br{
	display:block;
}
.flowR img {
	height:230px!important;
}
.feeL, .feeR {
    padding: 8%;
}
.feeTb table th {
	display:block;
    width: 96%;
    padding: 4% 2% 0 2%;
    font-weight: 500;
    font-size:1.5rem;
}
.feeTb table td {
	display:block;
    width: 96%;
    padding: 0 2% 4% 2%;
	text-align:left;
}
.kakaritsukeTtl {
    font-size: 1.7rem;
    padding: 0 0 0 22px;
}
.meritOne {
    padding: 7%;
	margin:0 auto 20px auto;
}
}
@media screen and (max-width: 500px) {
.flowNaka > li dl {
     padding-left: 40px;
}
.flowNaka > li dl::after {
     width: 0px;
}
.flowNaka > li .icon {
     font-size: 1.5rem;
     width: 2.55rem;
     height: 2.55rem;
     line-height: 2.45rem;
	 margin: 0 0 5px 0;
}
}
@media screen and (max-width: 480px) {
.serviceOneL .serviceRilla {
    width: 120px;
}
.gosoudanTxt {
    font-size: 2rem;
}
.zaitakuTaisyou {
    padding:8%;
}
.zaitakuTaisyoPic {
    width: 30%;
}
.flowR img {
	height:180px!important;
}
}
@media screen and (max-width: 440px) {
.serviceMain img{
	height:300px!important;
}
.flowNaka > li dl dt {
    display:block;
	margin-bottom: 15px;
}
.flowNaka > li .icon {
     display:block!important;
}
}
@media screen and (max-width: 400px) {
.gosoudanTxt {
    font-size: 1.9rem;
	letter-spacing:0.1rem;
}
}
@media screen and (max-width: 360px) {
.flowR img {
	height:140px!important;
}
}
@media screen and (max-width: 340px) {
.gosoudanTxt {
    font-size: 1.75rem;
	letter-spacing:0.05rem;
}
}

/************
店舗のご案内・一覧
************/
.googleMyMap{
	position: relative;
    padding-bottom: 45%;
    height: 0;
    overflow: hidden;
	margin:0 auto 70px auto;
}
.googleMyMap iframe, .googleMyMap object, .googleMyMap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 99%;
    height: 99%;
	border:1px solid #ccc!important;
}
.tenpoList{
	width:100%;
	margin:0 auto;
}
.tenpoList ul{
	width:100%;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}
.tenpoList ul li{
	width:30%;
	margin:0 0 4% 0;
	border-bottom:1px solid var(--basecolor);
	padding:0 0 2% 0;
}
.tenpoList ul li a{
	display:block;
	width:100%;
}
.tenpoList ul li a .tenpoListPic{	
  	margin: 0 auto;
  	overflow: hidden;
  	transition: .3s;
	display:block;
	background:var(--themecolor);
}
.tenpoList ul li a .tenpoListPic img{	
	background:var(--themecolor);
}
.tenpoListName{
	display:block;
	color:var(--themecolor);
	font-size:1.9rem;
	padding:10px 0 0 0;
	font-weight:500;
}
.tenpoListAdd{
	display:block;
	color:var(--basecolor);
	font-weight:500;
}
.tenpoListMore{
	text-align:right;
	font-size:1.4rem;
	display: block;
  	padding: 10px 0 0 0;
}
.tenpoMoreArrow{
	padding:0 0 0 10px;
	display: inline-block;
}
.tenpoMoreArrow span{
	display: inline-block;
	vertical-align: middle;
	width: 0;
	height: 0;
	border-top: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 7px solid #ea6fa6;
}
.tenpoMoreArrow span:nth-child(2){
	border-left: 7px solid #fac205;
	margin:0 3px;
}
.tenpoMoreArrow span:nth-child(3){
	border-left: 7px solid #0a2e83;
}
.tenpoList ul li a:hover{
	text-decoration:none;
}
.tenpoList ul li a:hover .tenpoListPic img{
	transform:scale(1.1,1.1);
	-webkit-transform:scale(1.1,1.1);
	-moz-transform:scale(1.1,1.1);
  	transition:.3s all;

}

@media screen and (max-width: 1200px) {
.googleMyMap{
    padding-bottom: 55%;
	margin:0 auto 60px auto;
}
}
@media screen and (max-width: 1000px) {
.googleMyMap{
    padding-bottom:60%;
}
.tenpoList ul li{
	width:46%;
	margin:0 0 6% 0;
	padding:0 0 3% 0;
}
}
@media screen and (max-width: 781px) {
.googleMyMap{
    padding-bottom: 68%;
	margin:0 auto 50px auto;
}
.tenpoList ul li{
	width:48%;
	margin:0 0 6% 0;
	padding:0 0 3% 0;
}
.tenpoListName {
    font-size: 1.7rem;
}
.tenpoListAdd {
    font-size: 1.5rem;
	line-height:1.8rem;
}
}
@media screen and (max-width: 580px) {
.googleMyMap{
    padding-bottom: 75%;
}
}
@media screen and (max-width: 440px) {
.googleMyMap{
    padding-bottom: 92%;
}
}
@media screen and (max-width: 310px) {
.tenpoListName {
    font-size: 1.6rem;
}
}

/************
店舗のご案内・詳細
************/
.tenpoMain{
	width:100%;
	margin:0 auto;
	padding:78px 0 0 0;
	display:flex;
	justify-content:space-between;
	flex-direction: row-reverse;
}
.tenpoMainL{
	width:350px;
	position:relative;
	height:calc(100svh - 80px);
}
.tenpoMainR{
	width:calc(100% - 350px);
	flex: 1;
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	overflow: hidden;
}
.tenpoMainR img{
	margin:0 auto;
	display:block;
	object-fit: cover;
	max-height:100svh;
 	height:100svh;
  	width: 100%;
}
.tenpoMainLNaka{
	width:30%;
	margin:0 auto;
	position: relative;
	display: flex;
    justify-content: space-between;
	height:calc(100% - 80px);
	padding:80px 0 0 0;
}
.tenpoMainName{
	-ms-writing-mode: tb-rl;
  	writing-mode: vertical-rl;
	font-size: 2.6rem;
  	letter-spacing: 0.8rem;
	position:relative;
	font-weight:400;
	margin:0 auto;
	color:var(--basecolor);
	text-align:left;
}
.tenpoMainName span{
	padding:15px 0 0 0;
	display:inline-block;
	font-size: 2.6rem;
	color:var(--basecolor);
	font-weight:400;
}
.tenpoMainKumashiro{
	-ms-writing-mode: tb-rl;
  	writing-mode: vertical-rl;
	font-family:var(--enLg);
	font-size: 1.9rem;
	font-weight:500;
	letter-spacing: 0.4rem;
	position:relative;
}
.tenpoMainKumashiro::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 40%;
    width: 1px;
    height: calc(100% - 250px);
    background-color: var(--basecolor);
}
.scroll{
	position:absolute;
	bottom:1%;
	left:3%;
	width:7%;
}
.scrollNaka{
	font-family: var(--enLg);
	-ms-writing-mode: tb-rl;
  	writing-mode: vertical-rl;
	color:var(--basecolor);
  	position:relative;
  	z-index: 2;
  	transition: 0.2s;
  	overflow: hidden;
	font-size:1.5rem;
	height:130px;
}
.scrollNaka::before {
 	animation: scroll 2s infinite;
  	background-color: var(--basecolor);
  	bottom: -20px;
  	content: "";
  	height: 100px;
  	left: 0;
  	margin: auto;
 	position: absolute;
  	right: 0;
  	width: 1px;
  	z-index: 2;
}
.scrollNaka::after {
  	background-color: #ccc;
 	bottom: -20px;
  	content: "";
  	height: 100px;
  	left: 0;
  	margin: auto;
  	position: absolute;
  	right: 0;
  	width: 1px;
}
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.tenpoMainMiddle{
	width:calc(100% - 320px);
	margin:0 0 0 320px;
	padding:90px 0;
}
.tenpoMainMiddleNaka{
	width:100%;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.tenpoMainMiddleNakaL{
	width:35%;
}
.tenpoMainMiddleNakaR{
	width:calc(100% - 42%);
	margin:0 0 0 7%;
}
.tenpoMainMiddleNakaR .gm{
	position: relative;
    padding-bottom: 65%;
    height: 0;
    overflow: hidden;
}
.tenpoMainMiddleNakaR .gm iframe, .tenpoMainMiddleNakaR .gm object, .tenpoMainMiddleNakaR .gm embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.tenpoSyosai{
	width:100%;
	margin:0 auto;
}
.tenpoSyosai table{
	width:100%;
	border-collapse:collapse;
}
.tenpoSyosai table th{
	width:22%;
	padding:1.5% 3% 1.5% 0;
	border-bottom:1px solid #d6d6d6;
	text-align:left;
	vertical-align:top;
}
.tenpoSyosai table td{
	width:73%;
	padding:1.5% 2% 1.5% 0;
	border-bottom:1px solid #d6d6d6;
}
.tenpoMainUnder{
	width:90%;
	max-width:1360px;
	margin:0 auto;
	padding:0 0 90px 0;
}
.tenpoMainUnderTtl{
	font-size: 2.2rem;
  	line-height: 3rem;
  	letter-spacing: 2px;
  	position: relative;
  	font-weight: 500;
	margin:0 auto 40px auto;
}
.tenpoMuService{
	width:100%;
	margin:0 auto 70px auto;
	overflow:hidden;
}
.tenpoMuService ul{
	display:flex;
	justify-content:center;
	flex-wrap: wrap;
	gap:20px;
}
.tenpoMuService ul li{
	width:46%;
	background:#fff;
	padding:1.5% 2%;
	box-sizing:border-box;
	display:flex;
	justify-content:space-between;
	align-items:center;
	box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
	-webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
	margin:10px;
}
.ttServiceIcon{
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	width:60px;
	height:60px;
}
.nationwide{
	background:url(./images/tenpo/tenpo-service1.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.follow{
	background:url(./images/tenpo/tenpo-service2.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.kakaritsuke{
	background:url(./images/tenpo/tenpo-service3.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.visit{
	background:url(./images/tenpo/tenpo-service4.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.generic{
	background:url(./images/tenpo/tenpo-service5.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.fax{
	background:url(./images/tenpo/tenpo-service6.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.night{
	background:url(./images/tenpo/tenpo-service7.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.disaster{
	background:url(./images/tenpo/tenpo-service8.png) no-repeat center top;
	background-size:60px 60px;
	height:60px;
}
.ttServiceTxt{
	color:var(--themecolor);
	width:calc(100% - 100px);
	margin:0 0 0 40px;
	font-size:1.7rem;
	font-weight:500;
}
#photoGallery{
	width:100%;
	margin:0 auto;
}
#photoGallery ul{
	width:100%;
	display:flex;
	justify-content:center;
	gap:25px;
	flex-wrap:wrap;
}
#photoGallery ul li{
	width:31.5%;
}
.totenpoList{
	width:20%;
	margin:60px auto 0 auto;
	overflow:hidden;
}
.totenpoList a{
	display: inline-block;
	border:1px solid var(--themecolor);
	width:100%;
	margin:0 auto;
	box-sizing:border-box;
	padding:8px 5%;
	text-align:center;
	color:var(--themecolor);
	transition:.3s;
	position: relative;
	font-size:1.5rem;
}
.totenpoList a:hover{
	text-decoration:none;
	color:#fff;
}
.totenpoList a:hover::before {
  	transform: scaleX(1);
  	transform-origin: left;
}
.totenpoList a::before {
  	position: absolute;
  	top: 0;
  	left: 0;
  	content: "";
  	display: block;
  	width: 100%;
  	height: 100%;
  	background: var(--themecolor);
  	transform: scaleX(0);
  	transform-origin: right;
  	transition: all 0.3s ease;
  	transition-property: transform;
}
.totenpoList a span {
  	position: relative;
}
@media screen and (max-width: 1500px) {
.tenpoMainMiddleNakaL{
	width:43%;
}
.tenpoMainMiddleNakaR{
	width:calc(100% - 50%);
}
}
@media screen and (max-width: 1400px) {
.tenpoMainLNaka{
	padding:50px 0 0 0;
	height:calc(100% - 50px);
}
.tenpoMainKumashiro::after {
    left: 35%;
}
.tenpoMainMiddle {
    width: calc(100% - 300px);
    margin: 0 0 0 300px;
}
.tenpoMainUnder {
    max-width: 1200px;
}
}
@media screen and (max-width: 1300px) {
.tenpoMainL {
    width: 240px;
}
.tenpoMainR{
	width:calc(100% - 240px);
}
.tenpoMainMiddle {
    width: 90%;
    margin:0 auto;
}
.tenpoMainMiddleNakaR{
	width:calc(100% - 48%);
	margin:0 0 0 5%;
}
.tenpoMainUnder {
    max-width: 90%;
}
}
@media screen and (max-width: 1200px) {
.tenpoMain{
	padding: 70px 0 0 0;
}
.tenpoMainL {
    width: 140px;
}
.tenpoMainR{
	width:calc(100% - 140px);
}
.tenpoMainLNaka {
	width: 60%;
	padding: 30px 0 0 0;
    height: calc(100% - 30px);
}
}
@media screen and (max-width: 1100px) {
.tenpoMainKumashiro::after {
    left: 38%;
	height: calc(100% - 220px);
}
.tenpoMainName {
    font-size: 2.2rem;
    letter-spacing: 0.6rem;
}
.tenpoMainName span {
    font-size: 2.2rem;
}
.tenpoMainKumashiro {
    font-size: 1.7rem;
    letter-spacing: 0.3rem;
}
#photoGallery ul li{
	width:31.2%;
}
}
@media screen and (max-width: 1000px) {
.tenpoMainMiddle {
    padding: 60px 0;
}
.tenpoMainMiddleNakaL {
    width: 50%;
}
.tenpoMainMiddleNakaR {
    width: calc(100% - 55%);
}
.tenpoMainMiddleNakaR .gm {
    padding-bottom: 85%;
}
.tenpoMuService {
    margin: 40px auto 60px auto;
}
.tenpoMuService ul {
    gap: 15px;
}
.tenpoMainUnder {
    padding: 0 0 60px 0;
}
}
@media screen and (max-width: 900px) {
.tenpoMain{
	display:block;
	position:relative;
	height: auto;
}
.tenpoMainL {
    width: 100%;
	position:relative;
	z-index:100;
	background:#fff;
	height:auto;
}
.tenpoMainR{
	width:100%;
	margin:0 auto 40px auto;
	position:relative;
}
.tenpoMainR img {
    height: auto;
    object-fit: scale-down;
}
.tenpoMainLNaka {
   margin:0 auto;
	width:88%;
	display:block;
	padding:0;
}
.tenpoMainName {
    -ms-writing-mode: unset;
    writing-mode:unset;
    position: relative;
	font-size: 2rem;
    letter-spacing: 0.2rem;
	line-height:3rem;
	font-weight:500;
}
.tenpoMainName span {
    font-size: 2rem;
	padding:0;
	font-weight:500;
}
.tenpoMainKumashiro {
    -ms-writing-mode: unset;
    writing-mode: unset;
	font-size: 1.7rem;
    letter-spacing: 0.1rem;
	width:100%;
}
.tenpoMainKumashiro::after {
    bottom: 12px;
    left:unset;
	right:0;
    width: calc(100% - 180px);
	height: 1px;
}
.scroll {
    display:none;
}
.tenpoMainMiddle{
	padding:40px 0 60px 0;
}
#photoGallery ul li{
	width:48%;
}
.totenpoList {
    width: 40%;
    margin: 50px auto 0 auto;
}
}
@media screen and (max-width: 781px) {

#photoGallery ul {
    gap: 10px;
}
#photoGallery ul li {
    width: 49%;
	margin:0;
}
.tenpoMainMiddle {
	 width: 88%;
    padding: 15px 0 50px 0;
}
.tenpoMainMiddleNaka {
    display: block;
}
.tenpoMainMiddleNakaL {
    width: 100%;
	margin:0 auto 25px auto;
}
.tenpoMainMiddleNakaR {
    width: 100%;
	margin:0 auto;
}
.tenpoMuService ul {
    display: block;
}
.tenpoMuService ul li {
    width: 95%;
    margin: 10px auto 20px auto;
	padding: 1.5% 4%;
}
.ttServiceTxt {
    width: calc(100% - 80px);
    margin: 0 0 0 20px;
    line-height:2.4rem;
}
}
@media screen and (max-width:640px) {
.tenpoMainMiddleNakaR .gm {
    padding-bottom: 90%;
}
.tenpoSyosai table th {
	display:block;
    width: 100%;
    padding: 2% 0 0 0;
    border-bottom: none;
    font-size:1.5rem;
}
.tenpoSyosai table td {
	display:block;
    width: 100%;
    padding: 0 0 2% 0;
}
.tenpoMainUnderTtl {
    margin: 0 auto 40px auto;
}
.tenpoMainUnder {
    padding: 0 0 50px 0;
}
#photoGallery ul {
    display:block;
}
#photoGallery ul li {
    width: 100%;
    margin: 0 auto 15px auto;
}
#photoGallery ul lilast-child {
    margin: 0 auto;
}
.totenpoList {
    width: 100%;
    margin: 30px auto 0 auto;
}
}
@media screen and (max-width:480px) {
.tenpoMainName {
	font-size: 2.2rem;
    letter-spacing: 0.1rem;
	line-height:2.2rem;
}
.tenpoMainName span {
    font-size: 2.2rem;
}
.tenpoMainKumashiro {
	font-size: 1.6rem;
}
.tenpoSyosai table th {
    padding: 4% 0 0 0;
}
.tenpoSyosai table td {
    padding: 0 0 4% 0;
}
.tenpoMuService {
    margin: 40px auto;
}
.tenpoMuService ul li {
    width: 93%;
	padding: 2% 5%;
}
.tenpoMainUnderTtl span{
    display:block;
}
}
@media screen and (max-width:380px) {
.tenpoMainKumashiro::after {
    width: calc(100% - 65%);
}
.tenpoMainName {
	font-size: 1.8rem;
}
.tenpoMainName span {
    font-size: 1.8rem;
}
}
@media screen and (max-width:340px) {
.tenpoMainLNaka {
    padding: 5% 5% 0 5%;
	width:90%;
}
}
@media screen and (max-width:310px) {
.tenpoMainName {
	font-size: 1.75rem;
}
.tenpoMainName span {
    font-size: 1.75rem;
}
}

/******************
採用情報　トップ
******************/
.recruitMain {
	display: grid;
	grid-template-columns: repeat(11, 1fr);
	grid-template-rows: repeat(6, 1fr);
	grid-column-gap: 4px;
	grid-row-gap: 4px;
	height: calc(100vh - 80px);
}
.recruitMainPic1 {
	grid-area: 3 / 1 / 5 / 3;
}
.recruitMainPic2 { 
	grid-area: 1 / 3 / 4 / 6; 
}
.recruitMainPic3 { 
	grid-area: 4 / 3 / 6 / 4; 
}
.recruitMainPic4 { 
	grid-area: 4 / 4 / 7 / 7;
}
.recruitMainPic5 { 
	grid-area: 1 / 6 / 2 / 7; 
}
.recruitMainPic6 { 
	grid-area: 1 / 7 / 2 / 8; 
}
.recruitMainPic7 { 
	grid-area: 2 / 6 / 4 / 9; 
}
.recruitMainPic8 { 
	grid-area: 1 / 9 / 3 / 12; 
}
.recruitMainPic9 { 
	grid-area: 3 / 9 / 4 / 11; 
}
.recruitMainPic10 { 
	grid-area: 3 / 11 / 4 / 12; 
}
.recruitMainPic11 { 
	grid-area: 4 / 10 / 5 / 11; 
}
.recruitMainPic12 { 
	grid-area: 4 / 11 / 5 / 12; 
}
.recruitMainPic13 { 
	grid-area: 6 / 7 / 7 / 9; 
}
.recruitMainPic14 { 
	grid-area: 6 / 9 / 7 / 10; 
}
.recruitMainPic15 { 
	grid-area: 5 / 10 / 7 / 12; 
}
.recruitMainPic16 { 
	grid-area: 4 / 7 / 6 / 10;
	position:relative;
} 
.rcmP img{
 	width: 100%;
  	height: 100%;
  	object-fit: cover;
	transform: scale(0);
	-moz-transform: scale(0);
	-webkit-transform: scale(0);
  	animation: zoomIn 0.75s ease-in-out forwards;
}
@keyframes zoomIn {
  0% {
    transform: scale(0.6);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.recruitMainPic1 img , .recruitMainPic5 img  , .recruitMainPic9 img , .recruitMainPic12 img , .recruitMainPic13 img{
	animation-delay:.28s;
}
.recruitMainPic2 img , .recruitMainPic6 img , .recruitMainPic10 img , .recruitMainPic11 img , .recruitMainPic14 img{
	animation-delay:.45s;
}

.recMaitxt svg{
	position:absolute;
	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	width:65%;
}
@-webkit-keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-1 {
  -webkit-animation: animate-svg-fill-1 0.7s ease-in 0.7s both;
          animation: animate-svg-fill-1 0.7s ease-in 0.7s both;
}
@-webkit-keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-2 {
  -webkit-animation: animate-svg-fill-2 0.7s ease-in 0.7999999999999999s both;
          animation: animate-svg-fill-2 0.7s ease-in 0.7999999999999999s both;
}
@-webkit-keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-3 {
  -webkit-animation: animate-svg-fill-3 0.7s ease-in 0.8999999999999999s both;
          animation: animate-svg-fill-3 0.7s ease-in 0.8999999999999999s both;
}
@-webkit-keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-4 {
  -webkit-animation: animate-svg-fill-4 0.7s ease-in 1s both;
          animation: animate-svg-fill-4 0.7s ease-in 1s both;
}
@-webkit-keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-5 {
  -webkit-animation: animate-svg-fill-5 0.7s ease-in 1.1s both;
          animation: animate-svg-fill-5 0.7s ease-in 1.1s both;
}
@-webkit-keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-6 {
  -webkit-animation: animate-svg-fill-6 0.7s ease-in 1.2s both;
          animation: animate-svg-fill-6 0.7s ease-in 1.2s both;
}
@-webkit-keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-7 {
  -webkit-animation: animate-svg-fill-7 0.7s ease-in 1.3s both;
          animation: animate-svg-fill-7 0.7s ease-in 1.3s both;
}
@-webkit-keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-8 {
  -webkit-animation: animate-svg-fill-8 0.7s ease-in 1.4s both;
          animation: animate-svg-fill-8 0.7s ease-in 1.4s both;
}
@-webkit-keyframes animate-svg-fill-9 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-9 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-9 {
  -webkit-animation: animate-svg-fill-9 0.7s ease-in 1.5s both;
          animation: animate-svg-fill-9 0.7s ease-in 1.5s both;
}
@-webkit-keyframes animate-svg-fill-10 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-10 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-10 {
  -webkit-animation: animate-svg-fill-10 0.7s ease-in 1.6s both;
          animation: animate-svg-fill-10 0.7s ease-in 1.6s both;
}
@-webkit-keyframes animate-svg-fill-11 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
@keyframes animate-svg-fill-11 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(0, 13, 54);
  }
}
.svg-elem-11 {
  -webkit-animation: animate-svg-fill-11 0.7s ease-in 1.7s both;
          animation: animate-svg-fill-11 0.7s ease-in 1.7s both;
}
.recBg {
    background:linear-gradient(to bottom, white, rgba(173, 216, 230, 0.3), white);
	background:-webkit-linear-gradient(to bottom, white, rgba(173, 216, 230, 0.3), white);
    height: 100%;
}
.recBgNaka{
	width:90%;
	max-width:1300px;
	margin:0 auto;
	overflow:hidden;
	padding:80px 0 50px 0;
	position:relative;
}
.recAboutUp .wp-block-group__inner-container{
	display:flex;
	width:100%;
	justify-content:space-between;
	align-items:center;
	flex-direction: row-reverse;
	margin:0 auto 80px auto;
}
.recAboutUpL {
	width:420px;
	gap:0!important;
}
.recAboutUpOne img{
	margin:0 auto!important;
}
.recAboutUpOne:first-child , .recAboutUpOne:last-child{
	margin:70px 0 0 0!important;
}
.recAboutUpR .wp-block-group__inner-container{
	display:block;
}
.recAboutUpR{
	width:calc(100% -  520px);
	margin:0 0 0 100px;
}
.recAboutUpR .wp-block-group__inner-container{
	display:block;
}
.recAboutTtl{
	color:#000d36;
	font-size:2.5rem;
	margin:0 auto 25px auto;
	font-weight:500;
	letter-spacing:0.3rem;
}
.recTopMessege .wp-block-group__inner-container{
	display:flex;
	width:100%;
	justify-content:space-between;
	margin:0 auto 50px auto;
}
.recTopMessegeNakaL .wp-block-group__inner-container{
	display:block;
	margin:0 auto;
	width:650px;
}
.recTopMessegeNakaR{
	width:calc(100% - 760px);
	margin:0 0 0 110px;
}
.rMessageUpTxt{
	margin:0 auto 50px auto;
	overflow:hidden;
}
.rMesseageName{
	display: flex;
  	align-items: center;
  	padding-left: 0;
  	font-size: 1.85rem;
  	color: var(--themecolor);
  	letter-spacing: 0.05rem;
  	margin: 0 auto 10px auto;
}
.rMesseageName::after {
  	flex-grow: 1;
  	width: auto;
  	height: 1px;
  	content: "";
  	background-color: var(--themecolor);
	margin-left: 2rem;
}
.rMesseageName span{
	font-size:1.65rem;
	margin:0 10px 0 0;
}
.recCeo{
	width:100%;
	text-align:right;
	margin:30px 0 0 0;
	font-size:1.8rem;
}
.recCeo span{
	padding:0 20px 0 0;
	font-size:1.5rem;
}
.recFeaturesGall{
	margin:0 auto 60px auto;
}
.welfareWrapper{
	width:90%;
	max-width:1300px;
	margin:0 auto;
	overflow:hidden;
	padding:0 0 90px 0;
	position:relative;
}
.welfareWrapper .wp-block-group__inner-container{
	display:flex;
	justify-content:center;
	gap:20px;
	flex-wrap:wrap;
}
.welfareOne{
	width: 29%;
  	padding: 2%;
  	background: #fff;
  	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	box-shadow: 2px 2px 10px 0px rgba(0, 73, 150, 0.39);
	-moz-box-shadow:2px 2px 10px 0px rgba(0, 73, 150, 0.39);
	-webkit-box-shadow:2px 2px 10px 0px rgba(0, 73, 150, 0.39);
  	box-sizing:border-box;
	margin:1%;
}
.welfareOne .wp-block-group__inner-container {
  	display: block;
}
.welfareTtl{
	font-weight:500;
	font-size:2.1rem;
	letter-spacing:0.3rem;
	margin:0 auto 20px auto;
	text-align:center;
	color:#0c2a6d;
}
.welfareIlla{
	width:50%;
	margin:0 auto 25px auto!important;
}
.welfareIlla img{
	width:100%;
	max-width:100%;
	margin:0 auto !important;
	height:auto;
}
.welfareTxt{
	text-align:center;
}
.interviewWrapper{
	width:90%;
	max-width:1300px;
	margin:0 auto;
	overflow:hidden;
	padding:0 0 50px 0;
	position:relative;
}
.recInsta{
	width:90%;
	max-width:1300px;
	margin:0 auto!important;
	overflow:hidden;
	padding:0 0 150px 0;
	position:relative;
}
.recInsta img{
	width:100%;
	max-width:100%;
	margin:0 auto!important;
}
.recfContactWrapper{
	width:100%;
	position:relative;
	margin:0 auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(1, 1fr);
	grid-column-gap: 0px;
	grid-row-gap: 0px;
}
.recfCUp{
	width:100%;
	position:relative;
		margin:0 auto;
}
.recfCUpL{
	grid-area: 1 / 1 / 2 / 3;
	display: flex;
  	align-items: center;
  	justify-content: center;
}
.recfCUpLNaka{
	width:80%;
	padding:0 10%;
}
.recfCUpR{
	grid-area: 1 / 3 / 2 / 4;
	position:relative;
}
.recfCUpR img{
	width:100%;
	max-width:100%;
	margin:0 auto;
	height:auto;
	position:relative;
}
.recfCUpRBg{
	position:relative;
	z-index:-1;
	width:100%;
}
.rfurPc{
	display:block;
}
.rfurSp{
	display:none;
}
.recfCUpRUp{
	position:absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	z-index:1;
	width:60%;
}
.recfCUpRUpTtl{
	text-align:center;
	font-size:2.3rem;
	font-weight:500;
	margin:0 auto 20px auto;
	color:#fff;
}
.recfCUpRUpTxt{
	color:#fff;
}
.recfCUpRUpMore{
	display:none;
}
.recfCUnderMail {
	grid-area: 2 / 1 / 3 / 3;
	height:120px;
}
.recfCUnderMail a{
	display:block;
	background:#d2e6f4;
	text-align:center;
	font-weight:500;
	font-size:1.8rem;
	display:flex;
	align-items:center;
	justify-content:center;
	height:120px;
	transition:.3s;
}
.recfCUnderMail a span{
	display:inline-block;
	width:40px;
	padding:0 10px 0 0;
}
.recfCUnderMail a:hover{
	background:#81caf7;
	text-decoration:none;
	color:var(--basecolor);
}
.recfCUnderMail a span img{
	width:100%;
	max-width:100%;
	margin:0 auto;
}
.recfCUnderMail a br{
	display:none;
}
.recfCUnderLine {
	grid-area: 2 / 2 / 3 / 3;
	height:120px;
} 
.recfCUnderLine a{
	display:block;
	background:#f9d7d5;
	text-align:center;
	font-weight:500;
	font-size:1.8rem;
	display:flex;
	align-items:center;
	justify-content:center;
	height:120px;
} 
.recfCUnderLine a span{
	display:inline-block;
	width:40px;
	padding:0 10px 0 0;
}
.recfCUnderLine a span img{
	width:100%;
	max-width:100%;
	margin:0 auto;
}
.recfCUnderLine a:hover{
	background:#f99d9b;
	text-decoration:none;
	color:var(--basecolor);
}
.recfCUnderLine a br{
	display:none;
}
.recfCUnderMore {
	grid-area: 2 / 3 / 3 / 4;
	position:relative;
	height:120px;
}
.recfCUnderMore a{
	display:block;
	background:#162e6e;
	color:#fff;
	height:120px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	font-weight:500;
	font-size:1.8rem;
	position:relative;
}
.recfCUnderMore a span{
	display: inline-block;
  	vertical-align: middle;
  	width: 0;
  	height: 0;
  	border-top: 8px solid transparent;
  	border-bottom: 8px solid transparent;
  	border-left: 8px solid #fff;
	margin:0 0 0 10px;
}
.recfCUnderMore a:hover{
	background:#4d669e;
	text-decoration:none;
}
.recfEntryWrapper{
	width:100%;
	margin:0 auto;
	background:url(./images/recruit/rec-entry-bg.jpg) no-repeat center center;
	position:relative;
	height:600px;
}
.recfEntryWNaka{
	position:absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width:50%;
	padding:60px 0;
}
.toEntry{
	width:50%;
	margin:60px auto 0 auto;
	overflow:hidden;
}
.toEntry a{
	display:block;
	width:100%;
	margin:0 auto;
	color:var(--themecolor);
	text-align:center;
	font-size:1.8rem;
	font-weight:500;
	padding:20px 3%;
	width:100%;
	box-sizing:border-box;
	letter-spacing:0.2rem;
	background:#fff;
	transition:.3s;
}
.toEntry a:hover{
	color:#fff;
	background:var(--themecolor);
	text-decoration:none;
}
#saiyouUnder{
	clear:both;
	z-index:9000;
	display: flex;
	position: fixed;
	bottom: 0;
	right: 0;
	width:32%;
}
.saiyouUnderNaka{
	width:100%;
	display:flex;
	justify-content: center;
	align-items:stretch;
}
.saiyouUnderL{
	width:20%;
	height:100%;
	position:relative;
}
.saiyouUnderL a{
	display:block;
	width:100%;
	margin:0 auto;
	text-align:center;
	color:#fff;
	font-weight:500;
	transition:.3s;
	background:#1659ab;
	height: 100%;
	position:relative;
}
.saiyouUnderLIn{
	position:absolute;
		top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width:90%;
}
.saiyouUnderL a:hover{
	text-decoration:none;
	background:var(--themecolor);
}
.saiyouUnderL span{
	display:block;
	width:18%;
	margin:0 auto 5px auto;
}
.saiyouUnderL span img{
	display:block;
	width:100%;
	max-width:100%;
	margin:0 auto;
}
.saiyouUnderR{
	width:80%;
	background:#162e6e;
	height: 100%;
}
.saiyouUnderRUp{
	width:100%;
	text-align:center;
	color:#fff;
	font-weight:500;
	padding:5px 0;
}
.saiyouUnderRUnder{
	width:100%;
	display:flex;
	justify-content: center;
	align-items:center;
}
.saiyouUnderRUnderOne{
	width:100%;
}
.saiyouUnderRUnderOne a{
	display:block;
	width:100%;
	box-sizing:border-box;
	padding:5px 4%;
	text-align:center;
	color:var(--basecolor);
	background:#d2e6f4;
	font-size:1.55rem;
	font-weight:500;
}
.saiyouUnderRUnderOne a span.suruoIlla{
	display:inline-block;
	width:30px;
	padding:0 10px 0 0;
}
.saiyouUnderRUnderOne a:hover{
	background:#81caf7;
	text-decoration:none;
	color:var(--basecolor);
}
.saiyouUnderRUnderOne a span.suruoIlla img{
	width:100%;
	max-width:100%;
	margin:0 auto;
}
.saiyouUnderRUnderOne:nth-child(2) a{
	background:#f9d7d5;
} 
.saiyouUnderRUnderOne:nth-child(2) a:hover{
	background:#f99d9b;
	text-decoration:none;
	color:var(--basecolor);
} 
[class*=swiper]:focus {
  outline: none;
}
.slide-media,
.thumb-media {
  position: relative;
  overflow: hidden;
}
.slide-media img,
.thumb-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1400px) {
.recfEntryWrapper{
	height:500px;
}
.recBgNaka{
	max-width:90%;
}
}
@media screen and (max-width: 1240px) {
#saiyouUnder{
	width:45%;
}
.recAboutUpL {
    width: 40%;
}
.recAboutUpR {
    width: calc(100% - 48%);
    margin: 0 0 0 8%;
}
.recTopMessegeNakaL{
	width:55%;
}
.recTopMessegeNakaL .wp-block-group__inner-container {
    margin: 0;
    width:100%;
}
.recTopMessegeNakaR{
	width:calc(100% - 60%);
	margin:0 0 0 5%;
}
.welfareTxt{
	text-align:left;
}
.welfareTxt br{
	display:none;
}
.recfCUpRUp{
	width:70%;
}
.recfCUpRUpTtl {
    font-size: 2.1rem;
    margin: 0 auto 15px auto;
}
.toEntry {
    width: 70%;
    margin: 50px auto 0 auto;
}
}
@media screen and (max-width: 1100px) {
.recfCUpLNaka{
	width:90%;
	padding:0 5%;
}
}
@media screen and (max-width: 1000px) {
.recruitMain {
	height: 100%;
}
.recAboutUp .wp-block-group__inner-container {
    margin: 0 auto 60px auto;
}
.recAboutTtl {
    font-size: 2.2rem;
    margin: 0 auto 20px auto;
    letter-spacing: 0.2rem;
}
.recTopMessegeNakaL{
	width:50%;
}
.recTopMessegeNakaR{
	width:calc(100% - 55%);
	margin:0 0 0 5%;
}
.recfContactWrapper {
   	grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto auto;
}
.recfCUpL{
	grid-area: 2 / 1 / 3 / 3;
	display:block;
	padding:80px 0;
}
.recfCUpR{
	 grid-area: 1 / 1 / 2 / 3;
}
.recfCUnderMore {
   display:none;
}
.recfCUnderMail {
    grid-area:3 / 1 / 4 / 3;
    height: auto;
}
.recfCUnderLine {
    grid-area: 3 / 2 / 4 / 3;
    height:auto;
}
.rfurPc{
	display:none;
}
.rfurSp{
	display:block;
}
.recfCUpRUpTtl {
    font-size: 2.3rem;
	margin:0 auto 30px auto;
}
.recfCUpRUpMore{
	display:block;
	width:100%;
	margin:50px auto 0 auto;
	overflow:hidden;
}
.recfCUpRUpMore a{
	display:block;
	width:100%;
	box-sizing:border-box;
	padding:15px 5%;
	background:#fff;
	color:var(--themecolor);
	font-size:1.7rem;
	text-align:center;
	font-weight:500;
	transition:.3s;
}
.recfCUpRUpMore a span {
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 6px solid var(--themecolor);
    margin: -3px 0 0 10px;
}
.recfCUpRUpMore a:hover{
	background:var(--hovercolor);
	color:#fff;
	text-decoration:none;
}
.recfCUpRUpMore a:hover span {
    border-left: 6px solid #fff;
}
.recfEntryWrapper {
    background: url(./images/recruit/rec-entry-bg.jpg) no-repeat center 23%;
    height: 400px;
}
.recfEntryWNaka {
    width: 70%;
    padding: 20px 0;
}
.toEntry {
    width: 100%;
	margin: 40px auto 0 auto;
}
#saiyouUnder{
	width:100%;
}
}
@media screen and (max-width: 850px) {
.welfareOne {
    width: 45%;
    padding: 4%;
    margin: 1%;
}
.welfareTtl {
    font-size: 1.9rem;
    letter-spacing: 0.15rem;
}
.rMessageUpTxt{
	margin:0 auto 30px auto;
	overflow:hidden;
}
.smb30{
	height:30px!important;
}
}
@media screen and (max-width: 781px) {
.recruitMain {
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: repeat(10, 1fr);
}
.recruitMainPic1 {
	grid-area: 1 / 1 / 3 / 3;
}
.recruitMainPic2 { 
	grid-area: 1 / 3 / 4 / 6; 
}
.recruitMainPic3 { 
	grid-area: 2 / 6 / 4 / 7; 
}
.recruitMainPic4 { 
	grid-area: 4 / 1 / 7 / 4;
}
.recruitMainPic5 { 
	grid-area: 7 / 1 / 8 / 2; 
}
.recruitMainPic6 { 
	grid-area: 7 / 2 / 8 / 3 ; 
}
.recruitMainPic7 { 
	grid-area: 9 / 1 / 11 / 4; 
}
.recruitMainPic8 { 
	grid-area: 6 / 4 / 8 / 7; 
}
.recruitMainPic9 { 
	grid-area: 8 / 2 / 9 / 4; 
}
.recruitMainPic10 { 
	grid-area: 8 / 4 / 9 / 5; 
}
.recruitMainPic11 { 
	grid-area:  8 / 5 / 9 / 6; 
}
.recruitMainPic12 { 
	grid-area: 10 / 6 / 11 / 7; 
}
.recruitMainPic13 { 
	grid-area: 3 / 1 / 4 / 3; 
}
.recruitMainPic14 { 
	grid-area: 7 / 3 / 8 / 4; 
}
.recruitMainPic15 { 
	grid-area: 9 / 4 / 11 / 6; 
}
.recruitMainPic16 { 
	grid-area: 4 / 4 / 6 / 7;
	position:relative;
}
.recBgNaka{
	width:88%;
	max-width:88%;
	padding:70px 0 40px 0;
}
.recAboutUp .wp-block-group__inner-container{
	display:block;
}
.recAboutUpR {
    width: 100%;
    margin: 0 auto 10px auto;
}
.recAboutUpR .wp-block-group__inner-container {
   margin: 0 auto 30px auto;
}
.recAboutUp .recAboutUpL{
	flex-wrap: nowrap !important;
	width:80%;
	margin:0 auto;
}
.recTopMessege .wp-block-group__inner-container {
    display: block;
    margin: 0 auto 60px auto;
}
.recTopMessegeNakaL .wp-block-group__inner-container{
	margin: 0 auto 30px auto!important;
}
.recTopMessegeNakaL{
	width:100%;
	margin:0 auto 25px auto;
}
.recTopMessegeNakaR{
	width:100%;
	margin:0 auto;
}
.recTopMessege .wp-block-group__inner-container .h3Wrapper{
        margin: 0 auto ;
}
.recTopMessege h3 {
        margin: 0 auto 20px auto;
}
.recTopMessege .wp-block-group__inner-container .h3Wrapper .wp-block-group__inner-container {
        margin: 0 auto 25px auto!important;
}
.rMesseageName{
  	font-size: 1.75rem;
}
.rMesseageName::after {
	margin-left: 1.5rem;
}
.rMesseageName span{
	font-size:1.6rem;
}
.recCeo {
    margin: 25px 0 0 0;
    font-size: 1.7rem;
}
.h3wc {
    margin:0 auto 20px auto
}
.recFeaturesGall{
	margin:0 auto 40px auto;
}
.recFeaturesGall figure.wp-block-image:not(#individual-image){
	width:48%!important;
}
.recInsta {
    padding: 0 0 80px 0;
}
.recfCUpRUpTtl {
    font-size: 2.1rem;
	margin:0 auto 15px auto;
}
.recfCUpRUpMore{
	margin:30px auto 0 auto;
}
.recfCUpL{
	padding:60px 0;
}
.recfCUnderMail a {
    font-size: 1.65rem;
}
.recfCUnderLine a {
    font-size: 1.65rem;
}
.toEntry a {
    font-size: 1.7rem;
    letter-spacing: 0.1rem;
}
.saiyouUnderL {
    width: 50%;
}
.saiyouUnderR {
    width: 50%;
}
.saiyouUnderL span{
	display:none;
}
.saiyouUnderRUp {
    display: none;
}
.saiyouUnderRUnderOne a span.suruoIlla {
    display:block;
    width: 30px;
    padding: 0 ;
	margin:0 auto;
}
.saiyouUnderRUnderOne a span.suruoTxt{
	display:none;
}
.saiyouUnderLIn {
    position: relative;
    padding: 10px 0;
}
.saiyouUnderRUnderOne a {
    padding: 10px 4%;
}
}

@media screen and (max-width: 640px) {
.recBgNaka {
    padding: 50px 0 40px 0;
}
.recAboutUp .recAboutUpL{
	width:100%;
}
.welfareWrapper {
    padding: 0 0 40px 0;
}
.welfareWrapper .wp-block-group__inner-container {
    display: block;
}
.welfareOne {
    width:90%;
    padding: 6%;
    margin: 10px auto 25px auto;
}
.welfareTtl {
    margin:0 auto 15px auto;
}
.welfareIlla {
    width: 30%;
    margin: 0 auto 15px auto !important;
}
.recFeaturesGall{
	margin:0 auto 30px auto;
}
.interviewWrapper{
	width:94%;
	padding:0 0 30px 0;
}
.recfCUpRUp {
    width: 82%;
}
.recfCUpRBg {
   	height:400px;
}
.recfCUpRBg img{
   	height:400px;
	object-fit:cover;
	object-position:center;
}
.recfCUpLNaka {
    width: 82%;
    padding: 0 9%;
}
.recfCUpL{
	padding:50px 0;
}
.recfCUnderMail a {
    display: block;
    height: auto;
	width:100%;
	box-sizing:border-box;
	padding:25px 5%;
}
.recfCUnderMail a span {
    display:block;
    margin:0 auto;
    padding: 0;
}
.recfCUnderLine a {
    display: block;
    height: auto;
	width:100%;
	box-sizing:border-box;
	padding:25px 5%;
}
.recfCUnderLine a span {
    display:block;
    margin:0 auto;
    padding: 0;
}
.recfEntryWrapper {
    background: url(./images/recruit/rec-entry-bg.jpg) no-repeat center 23%;
    height: 320px;
	background-size: cover;
}
.recfEntryWNaka {
    width: 82%;
}
}
@media screen and (max-width: 480px) {
.recfCUnderMail a{
	line-height: 2.4rem;
}
.recfCUnderMail a span {
    padding: 0 0 10px 0;
}
.recfCUnderLine a{
	line-height: 2.4rem;
}
.recfCUnderLine a br{
	display:block;
}
.recfCUnderLine a span {
    padding: 0 0 10px 0;
}
}
@media screen and (max-width: 440px) {
.recAboutTtl {
    font-size: 2rem;
    letter-spacing: 0.1rem;
}
.recfCUpRBg {
   	height:360px;
}
.recfCUpRBg img{
   	height:360px;
}
.toEntry {
    width: 100%;
    margin: 30px auto 0 auto;
}
}
@media screen and (max-width: 360px) {
.spFss span{
	display:block;
}
}




/******************
採用トップスライド
******************/
.recTopVoiceWrapper{
	width:100%;
	max-width:1100px;
	margin:0 auto;
	position:relative;
}
.recTopVoice{
	width:100%;
	margin:0 auto;
	position:relative;
}
.recTopVoice [class*=swiper]:focus {
  outline: none;
}
.recTopVoice .slide-media,
.recTopVoice .thumb-media {
  position: relative;
  overflow: hidden;
}
.recTopVoice .slide-media img,
.recTopVoice .thumb-media img {
  	position: absolute;
  	top: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
  	-o-object-fit: cover;
    object-fit: cover;
}
.recTopVoice .swiper-button-prev, .recTopVoice .swiper-button-next {
  display: grid;
  place-content: center;
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.recTopVoice .swiper-button-prev::before, .recTopVoice .swiper-button-next::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border: 2px solid var(--themecolor);
}
.recTopVoice .swiper-button-prev::after, .recTopVoice .swiper-button-next::after {
  width: 12px;
  height: 12px;
  content: "";
  border: solid var(--themecolor);
  border-width: 2px 2px 0 0;
}
.recTopVoice .swiper-button-prev::after {
  margin-left: 7px;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
.recTopVoice .swiper-button-next::after {
  margin-right: 7px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.recTopVoice .swiper-button-disabled {
  pointer-events: none;
  opacity: 0;
}
.recTopVoice .swiper-area {
  position: relative;
}
.recTopVoice .swiper-pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
   flex-wrap: wrap;
  gap: 1.2rem 0.8rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
   -ms-flex-pack: center;
    justify-content: center;
  margin-top: 3.2rem;
  text-align: center;
}
.recTopVoice .swiper-button-prev, .recTopVoice .swiper-button-next {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  margin: auto;
}
.recTopVoice .swiper-button-prev {
  left: -70px!important;
}
.recTopVoice .swiper-button-next {
  right: -70px!important;
}
.recTopVoice .slide-content {
  padding: 3.2rem 0;
}
.recTopVoice .recTopPicWaku{
	background:var(--themecolor);
	margin:0 auto 15px auto;
	overflow:hidden;
}
.recTopVoice .recTopPicWaku img{
	box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.3);
	object-fit: cover;
  	width: 100%;
  	object-position: top center;
	overflow:hidden;
}
.recTopVoice .recTopPicWaku img{
	width:100%;
	overflow:hidden;
  	transition: .3s all;
}
.recTopVoice .recTopPicWaku:hover img{
	transform: scale(1.1,1.1);
  	-webkit-transform: scale(1.1,1.1);
  	-moz-transform: scale(1.1,1.1);
  	transition: .3s all;
}
.recTopVoice .recTopPicTxt{
	font-size:1.7rem;
	color:var(--basecolor);
	margin:0 auto 10px auto;
	font-weight:500;
	line-height:2.9rem;
}
.recTopVoice .recTopPicTxt span{
	display:block;
}
.recTopVoice .recTopUnder{
	width:100%;
	display:flex;
	justify-content:space-between;
}
.recTopVoice .recTopName{
	width:30%;
}
.recTopVoice .recTopYear{
	width:70%;
	text-align:right;
	font-weight:400;
}
.recTopVoice .recTopYear span{
	display:inline-block!important;
	font-weight:400;
}
.recTopMore{
	width:100%;
	max-width:300px;
	margin:60px auto ;
	overflow:hidden;
}
.recTopMore a{
	display:block;
	width:100%;
	background:var(--themecolor);
	color:#fff;
	text-align:center;
	padding:10px 4%;
	box-sizing:border-box;
	transition:.3s;
}
.recTopMore a span{
	display: inline-block;
  	vertical-align: middle;
  	width: 0;
  	height: 0;
  	border-top: 6px solid transparent;
  	border-bottom: 6px solid transparent;
  	border-left: 6px solid #fff;
	margin:-2px 0 0 10px;
}
.recTopMore a:hover{
	text-decoration:none;
	background:var(--hovercolor);
}
@media screen and (max-width: 1400px) {
.recTopVoiceWrapper{
	max-width:1000px;
	margin:0 auto;
	position:relative;
}
}
@media screen and (max-width: 1300px) {
.recTopVoiceWrapper{
	max-width:90%;
}
.recTopVoice .swiper-button-prev {
  left: -45px!important;
}
.recTopVoice .swiper-button-next {
  right: -45px!important;
}
}
@media screen and (max-width: 1000px) {
.recTopVoice {
    width: 94%;
}
}
@media screen and (max-width: 781px) {
.recTopMore {
    margin: 40px auto;
}
}
@media screen and (max-width: 680px) {
.recTopVoice {
    width: 90%;
}
}
@media screen and (max-width: 500px) {
.recTopVoice .swiper-button-prev {
    left: -36px !important;
}
.recTopVoice .swiper-button-next {
        right: -36px !important;
}
}
@media screen and (max-width: 480px) {
.recTopVoice {
    width: 80%;
}
.recTopVoice .swiper-button-prev {
    left: -50px !important;
}
.recTopVoice .swiper-button-next {
        right: -50px !important;
}
.recTopMore {
    max-width:86%;
}
}
@media screen and (max-width: 400px) {
.recTopVoice {
    width: 74%;
}
.recTopVoice .swiper-button-prev::before, .recTopVoice .swiper-button-next::before {
    display:none;
}
.recTopVoice .recTopPicTxt {
    font-size: 1.6rem;
}
}
@media screen and (max-width: 360px) {

}

/******************
先輩の声・一覧
******************/
.voiceList{
	width:100%;
	margin:0 auto;
}
.voiceList ul{
	width:100%;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap
}
.voiceList ul li{
	width:21%;
	margin:0 2% 4% 2%;
}
.voiceList ul li a{
	display:block;
	position:relative;
	transition:.3s;
}
.voiceList ul li a:hover{
	text-decoration:none;
}
.voiceList ul li a .voiceListPicWrapper{
	position:relative;
}
.voiceList ul li a .voiceListPicWrapper .voiceListPic {
  	overflow: hidden;
  	position: relative;
  	background: var(--themecolor);
	display:block;
}
.voiceList ul li a .voiceListPicWrapper .voiceListPic img{
  	width: 100%;
}
.voiceList ul li a:hover .voiceListPicWrapper .voiceListPic img{
	transform: scale(1.1,1.1);
  	-webkit-transform: scale(1.1,1.1);
  	-moz-transform: scale(1.1,1.1);
  	transition: .3s all;
	width: 100%;
  	object-fit: cover;
  	object-position: 100% 0;
}
.voiceList ul li a .voiceListTxt{
	width:100%;
	margin:15px auto;
}
.voiceList ul li a .voiceListTxt span{
  	color: var(--themecolor);
  	line-height:2.2rem;
  	font-weight: 500;
  	display: block;
}
.voiceList ul li a .voiceListName{
	color: var(--basecolor);
	font-weight:400;
	font-size: 1.4rem;
	line-height:2rem;
}
.voiceList ul li a .voiceListYear{
	color: var(--basecolor);
	font-size: 1.4rem;
	line-height:2rem;
}
@media screen and (max-width: 1240px) {
.voiceList ul li{
	width:29%;
	margin:0 2% 6% 2%;
}
}
@media screen and (max-width: 781px) {
.voiceList ul li{
	width:44%;
	margin:0 3% 6% 3%;
}
}
@media screen and (max-width: 480px) {
.voiceList ul li a .voiceListTxt span{
  	display: unset;
}
}
@media screen and (max-width: 360px) {
.voiceList ul li{
	width:94%;
	margin:0 auto 8% auto;
}
.voiceList ul li:last-child{
	margin:0 auto;
}
}


/******************
先輩の声・詳細
******************/
.interview-section {
  	position: relative;
 	display: flex;
  	align-items: center;
  	justify-content: space-between;
  	width: 100%;
  	height: 600px; 
  	background: #f5f5f5;
  	overflow: hidden;
	padding:78px 0 0 0;
}
.interview-section::before {
  	content: "";
  	position: absolute;
  	top: 0;
  	right: 0;
  	width: 50%;
  	height: 100%;
  	background: #f5f5f5;;
  	transform: skewX(-15deg); 
  	transform-origin: top right;
	z-index:100;
}
.interview-image {
  	width: 50%;
  	height: 100%;
  	object-fit: cover;
  	position: absolute;
  	left: 0;
  	top: 60px;
}
.interview-content {
 	position: absolute;
  	width: 45%;
  	z-index: 200;
  	right: 5%;
}
.voiceCatch{
	width:100%;
	margin:0 auto 20px auto;
}
.voiceCatchTxt{
	width:100%;
}
.voiceCatchTxt span{
  	background: var(--themecolor);
  	color: #fff;
  	font-size: 2.7rem;
  	font-weight: 500;
  	padding: 10px 5%;
  	display: inline-block;
  	clip-path: polygon(3% 0, 100% 0%, 97% 100%, 0% 100%);
	animation: fadeInLeft 0.5s ease-out forwards;
  	opacity: 0;
	animation-delay:0.3s;
	margin:0 0 15px 0;
}
@keyframes fadeInLeft {
    from {
    opacity: 0;
    transform: translateX(-50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.voiceCatchTxt.vc2 span{
	margin:0 0 0 40px!important;
	animation-delay:.5s!important;
}
.voiceYearWrapper{
	width:100%;
	margin:0 auto;
	display:flex;
	justify-content:end;
	animation: fadeInLeft 0.6s ease-out forwards;
  	opacity: 0;
	animation-delay:.7s;
}
.voiceYakusyoku{
	text-align:center;
	color:var(--themecolor);
	font-size: 1.9rem;
	font-weight:500;
	padding:0 20px 0 0;
}
.voiceName{
	text-align:center;
	color:var(--themecolor);
	font-size: 1.9rem;
	font-weight:500;
	padding:0 20px 0 0;
}
.voiceYear{
	text-align:center;
	color:var(--themecolor);
	font-size: 1.9rem;
}
.voiceMain{
	width:90%;
	max-width:1300px;
	position:relative;
	padding:80px 0;
	margin:0 auto;
}
.voiceWrapper{
	width:100%;
	margin:0 auto 70px auto;
	position:relative;
}
.voiceWrapper .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
}
.vwReverse .wp-block-group__inner-container{
	flex-direction:row-reverse
}
.voiceL{
	width:50%;
}
.voiceR{
	width:calc(100% - 57%);
	margin:0 0 0 7%;
}
.voiceL2 .wp-block-group__inner-container{
	display:block;
}
.voiceL2{
	width:50%;
}
.voiceR2{
	width:calc(100% - 57%);
	margin:0  7% 0 0;
}
.voiceL .wp-block-group__inner-container{
	display:block;
}
.voiceNumber{
	font-size:1.5rem;
	color:var(--themecolor);
	margin:0 auto;
	font-weight:500;
	line-height:2rem;
}
.voiceQ{
	font-size:2.5rem;
	color:var(--themecolor);
	margin:0 auto 25px auto;
	font-weight:500;
	line-height:4rem;
}
.voiceA{
	margin:0 auto 50px auto;
}
.otherVoice  [class*=swiper]:focus {
    outline: none;
}
.otherVoiceWrapper{
	width:100%;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	align-items:center;
	background:#f5f5f5;
	padding:70px 0;
}
.otherVoiceL{
	width:30%;
}
.otherInterTtl{
	color:var(--themecolor);
	font-size:2.3rem;
	font-weight:500;
	text-align:center;
	line-height:3rem;
}
.otherInterTtl span{
	color:var(--basecolor);
	font-size:1.9rem;
	font-weight:500;
	display:block;
	font-family: var(--enLg);
}
.otherVoice{
	width:70%;
}
.otherVoice .slide-media,
.otherVoice .thumb-media {
    position: relative;
    overflow: hidden;
  }
.otherVoice .slide-media img,
.otherVoice .thumb-media img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.otherVoice .swiper-button-prev{
	left:0!important;
}
.otherVoice .swiper-button-prev, .otherVoice .swiper-button-next {
    display: grid;
    place-content: center;
    width: 50px;
    height: 50px;
    cursor: pointer;
    -webkit-transition: var(--transition);
    transition: var(--transition);
  }
.otherVoice .swiper-button-prev::before, .otherVoice .swiper-button-next::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border:1px solid var(--themecolor);
  }
.otherVoice .swiper-button-prev::after, .otherVoice .swiper-button-next::after {
    width: 12px;
    height: 12px;
    content: "";
    border: solid var(--themecolor);
    border-width: 1px 1px 0 0;
  }
.otherVoice .swiper-button-prev::after {
    margin-left: 0.4rem;
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
  }
.otherVoice .swiper-button-next::after {
    margin-right: 0.4rem;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
.otherVoice .swiper-button-disabled {
    pointer-events: none;
    opacity: 0;
}
.otherVoice  {
    overflow: hidden;
}
.otherVoice  .swiper {
    overflow: visible;
}
.otherVoice .swiper-controller {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 1.6rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin: 20px 0 0 0;
}
.otherVoice .swiper-pagination {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.2rem 0.8rem;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin: 0 auto;
    text-align: center;
	bottom:20px!important;
}
.otherVoice .swiper-pagination-bullet {
    width: 30px;
    height: 3px;
    cursor: pointer;
    vertical-align: top;
    background-color:#111;
	border-radius:unset!important;
}
.otherVoice .swiper-pagination-bullet-active {
    width: 50px;
    background-color: var(--themecolor);
}
.otherVoice .swiper-button-prev, .otherVoice  .swiper-button-next {
    position: relative;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin: 0;
  }
.otherVoice .swiper-button-disabled {
    pointer-events: none;
    opacity: 0.5;
  }

.otherVoice .swiper-slide {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
}
.otherPicWakuWrapper{
	position:relative;
}
.otherVoice .otherPicWaku {
    overflow: hidden;
    width: 30rem;
	position:relative;
	margin:0 0 60px 0;
	background: var(--themecolor);
}
.otherVoice .otherPicWaku img{
    width: 100%;
    object-fit:cover;
	object-position:100% 0;
}
.otherVoice .otherPicTxt{
	position:absolute;
	bottom:-43px;
}
.otherVoice .otherPicTxt span{
	background: var(--themecolor);
  	color: #fff;
  	font-size: 1.7rem;
  	font-weight: 500;
  	padding: 5px 2%;
  	display: inline-block;
}
.otherName{
	color: var(--themecolor);
	font-weight:500;
	font-size: 1.7rem;
}
.otherYear{
	color: var(--themecolor);
}
.otherVoice .slide-media {
    padding-top: 62.5%;
}
.otherVoice .slide-media img {
    height: calc(100% + 16px);
    -webkit-transform: translateY(-16px);
    transform: translateY(-16px);
}
.otherVoice .slide-content {
    padding: 3.2rem;
}
.otherVoice .slide-date {
    font-size: 1.2rem;
    line-height: 1;
    display: block;
    color: var(--color-theme);
}
.otherVoice .slide-title {
    line-height: 1.6;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    height: 3.2em;
    margin-top: 1.6rem;
}
.swiper-wrapper a{
	display:block;
}
.swiper-wrapper a:hover{
	text-decoration:none;
}
@media screen and (max-width: 1300px) {
.interview-section::before {
  	width: 45%;
}
.interview-image {
  	width: 60%;
  	object-position: 80% 100%;
}
.interview-content {
	width:47%;
    right: 2%;
}
.voiceMain{
	width:90%;
	max-width:90%;
}
}
@media screen and (max-width: 1200px) {
.voiceQ {
    font-size: 2.3rem;
    line-height: 3.5rem;
}
}
@media screen and (max-width: 1000px) {
.interview-section {
    display:block;
    width: 100%;
    height: auto;
    background: transparent;
    padding: 0;
}
.interview-section::before {
   display:none;
}
.interview-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
}
.interview-content {
    width: 84%;
   	margin:30px auto 0 auto;
	position:relative;
}
.voiceYearWrapper {
    justify-content: start;
}
.voiceCatchTxt span{
  	clip-path: none;
	margin:0 0 10px 0;
	font-size: 2.2rem;
}
.voiceCatchTxt.vc2 span{
	margin:0!important;
}
.voiceYakusyoku{
	font-size: 1.7rem;
	padding: 0 10px 0 0;
}
.voiceName{
	font-size: 1.7rem;
}
.voiceYear{
	font-size: 1.7rem;
}
.voiceMain{
	width:84%;
	max-width:84%;
	padding:60px 0;
}
.voiceQ{
	font-size:2rem;
	margin:0 auto 20px auto;
	line-height:3rem;
}
.otherVoice .otherPicWaku {
    width: 27rem;
}
.otherVoiceL{
	width:35%;
}
.otherVoice{
	width:65%;
}
.otherVoice .otherPicTxt {
    bottom: -40px;
}
}
@media screen and (max-width: 900px) {
.voiceWrapper .wp-block-group__inner-container{
	display:block;
}
.voiceL{
	width:100%;
	margin:0 auto 25px auto;
}
.voiceR{
	width:100%;
	margin:0 auto;
}
.voiceL2{
	width:100%;
	margin:0 auto 25px auto;
}
.voiceR2{
	width:100%;
	margin:0 auto;
}
}
@media screen and (max-width: 781px) {
.interview-image {
    height: 550px;
    object-position: 50% 50%;
}
.interview-content {
   	margin:40px auto 0 auto;
	right:unset;
}
.voiceWrapper {
    margin: 0 auto 40px auto;
}
.otherVoiceWrapper {
    display: block;
    padding: 60px 0;
}
.otherVoiceL{
	width:100%;
	margin:0 auto 25px auto;
}
.otherVoice{
	width:95%;
	margin:0 0 0 5%;
}
.otherVoice .otherPicWaku {
    width: 23rem;
}
.otherInterTtl{
	line-height:3.5rem;
}
.otherInterTtl span {
    line-height:2.5rem;
}
.otherVoice .otherPicTxt span {
    padding: 5px 5%;
}
}
@media screen and (max-width: 640px) {
.voiceMain{
	padding:40px 0 60px 0;
}
.interview-image {
    height: 450px;
}
.voiceCatch {
    background: var(--themecolor);
    padding: 5% 10%;
    box-sizing: border-box;
	clip-path: polygon(5% 0, 100% 0%, 95% 100%, 0% 100%);
	animation: fadeInLeft 0.5s ease-out forwards;
}
.voiceCatchTxt span{
	background:transparent;
	padding:0;
	margin:0 auto;
}
.voiceYearWrapper {
    flex-wrap: wrap;
}
.voiceYear{
	width:100%;
	text-align:left;
}
.voiceA {
    margin: 0 auto 30px auto;
}
}
@media screen and (max-width: 480px) {
.interview-image {
    height: 360px;
}
.voiceCatch{
    padding: 6% 10%;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 !important;
}
.otherVoice .swiper-pagination-bullet-active {
    width: 40px!important;
}
.otherVoice .swiper-pagination-bullet {
    width: 20px;
}
.otherVoice .otherPicTxt span {
    font-size:1.55rem;
}
.otherVoice .otherPicWaku {
    width: 22rem;
}
}
@media screen and (max-width: 400px) {
.interview-image {
    height: 320px;
}
.otherVoice .swiper-button-prev, .otherVoice .swiper-button-next{
	display:none;
}
.otherVoice .swiper-pagination {
    bottom: 0px !important;
}
}

/******************
採用条件・採用実績
******************/
ul.jisseki{
	width:100%;
	margin:0 auto;
	position:relative;
	display:flex;
	flex-wrap:wrap;
}
ul.jisseki li{
	width:45%;
	padding:0 0 10px 15px;
	position:relative;
}
ul.jisseki li::before{
	position:absolute;
	content:'';
	width:10px;
	height:10px;
	border-radius:50%;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	background:var(--themecolor);
	left:0.1px;
	top:13px;
}
ul.syohoumoto{
	width:96%;
	margin:0 auto;
}
ul.syohoumoto li{
	width:23%;
}
.syohouTenpo{
	width:100%;
	padding:0 0 15px 0;
	margin:0 0 15px 0;
	overflow:hidden;
	border-bottom:1px dotted #aaa;
}
.jissekiTxt{
	clear:both;
	text-align:right;
}
.jissekiR{
	width:830px;
}
.jissekiR .wp-block-group__inner-container{
	display:block;
}
@media screen and (max-width: 1400px) {
.jissekiR{
	width:55vw;
}
}
@media screen and (max-width: 781px) {
.jissekiR {
    width: 100%;
}
ul.jisseki {
    display: block;
}
ul.jisseki li::before {
    top: 12px;
}
ul.syohoumoto{
	clear:both;
}
ul.syohoumoto li {
    width: 46%;
    float: left;
}
}
@media screen and (max-width: 480px) {
ul.syohoumoto li {
    width: 96%;
    float: none;
}
}

/******************
プライバシーポリシー
******************/
.privacyWrapper{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.privacyWrapper h3{
	font-size:2.4rem;
	text-align:left;
	background:none;
	padding:0;
	margin:0 auto 40px auto;
}
.privacyWrapper h3::before {
  	bottom: -10px;
	width:100px;
}
.ppTxt{
	margin:5px auto 8px auto;
	overflow:hidden;
	text-indent:-1.1em;
	padding:0 0 0 20px;
}
@media screen and (max-width: 1200px) {
.privacyWrapper h3{
	font-size:2.2rem;
	margin:0 auto 30px auto;
}
}
@media screen and (max-width: 781px) {
.privacyWrapper h3{
	font-size:2rem;
	letter-spacing: 0.2rem;
}
}


/******************
お問い合わせ
******************/
.contactUpTxt{
	text-align:center;
}
.contactWrapper{
	width:100%;
	max-width:800px;
	margin:0 auto;	
	overflow:hidden;
}
.contact_wrapper{
	width:65%;
	margin:0 auto;
	overflow:hidden;
}
.asutaHissu{
	font-size:85%;
	position:relative;
	padding:0 0 0 15px;
}
.asutaHissu::before{
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #d14423;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - 3px);
	left:0.5px;
}
#contactForm{
	margin:0 auto;
	width:100%;
	max-width:800px;
}
#contactForm input,
#contactForm select{
	/*-webkit-appearance: none;*/
	-webkit-border-radius: 7px;
	-moz-border-radius: 7px;
	border-radius: 7px;
	-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;
	background-color:#fff;
	position:relative;
	font-family:Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	padding: 20px 3%;
  	max-width: 99%;
	margin:2px 0 2px 0.2%;
	box-sizing:border-box;
}
#contactForm input{
	width:94%;
}
.zipCode input{
	width:16%!important;
}
.wpcf7-radio input{
	width:4%!important;
}
.todoufuken select{
	width:19%!important;
	max-width: 20%!important;
}	
#contactForm textarea{
	overflow: auto;
	height:140px;
	padding: 5px 1% 5px;
	line-height:1.1em;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	color: #323232;
	width:93%;
	font-family:Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	overflow: auto;
  	border: 1px solid #e2e2e2;
}
input:focus, textarea:focus {
	outline:none;
}
input[type=checkbox]:focus{
	outline:none;
}
input[type=radio]:focus{
	outline:none;
	color:#111;
}
#js-select{
	font-size:96%;
	height:45px;
}
#contactForm table{
	width:100%;
	border-spacing: 0;
}
#contactForm tr{
	clear:both;
	border-bottom:1px solid #ccc;
	padding: 4% 0 5% 0;
	display:block;
}
#contactForm th{
	position: relative;
	display:block;
  	width: 100%;
  	text-align: left;
  	font-weight: 500;
	padding:0 0 2% 0;
}
#contactForm td{
	display:block;
  	width: 100%;
	overflow:hidden;
}
span.required{
  display:inline-block;
  color: #fff;
	background:#d45353;
  position: relative;
  font-size: 1.25rem;
	line-height:1.6rem;
  text-align: center;
	padding:2px 2% 4px 2%;
	box-sizing:border-box;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	letter-spacing:4px;
	margin:0 0 0 15px;
	font-weight:400;
}
#sendingBox{
	width:96%;
	border-bottom:none;
	margin:auto;
	text-align:center;
	padding:30px 0;
}
#sendingTxt{
	font-size:90%;
	margin:0 auto 30px auto;
	overflow:hidden;
	line-height:175%;
}
#sendingTxt i{
	padding:0 0 0 3px;
}
#sendingTxt a{
	text-decoration:underline;
}
#sendingCheck{
	font-size:110%;
	margin:0 auto 10px auto;
}
input[type="checkbox"] {
  	position: relative;
  	width: 25px;
  	height: 25px;
  	border: 1px solid #e2e2e2;
	background:#fff!important;
  	vertical-align: -5px;
  	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	transition:.3s;
}
input[type="checkbox"]:checked{
	background:var(--themecolor)!important;
	border: 1px solid var(--themecolor);
	transition:.3s;
}
input[type="checkbox"]:checked:before {
  	position: absolute;
  	top: 4px;
  	left: 7px;
  	transform: rotate(50deg);
	-moz-transform: rotate(50deg);
	-webkit-transform: rotate(50deg);
  	width: 6px;
  	height: 10px;
  	border-right: 2px solid #fff;
  	border-bottom: 2px solid #fff;
  	content: '';
	transition:.3s;
}
#sendingCheck .wpcf7-list-item-label{
	margin:2px 0 0 7px;
}
#caveat{
	font-size:80%;
	color:#ff0000;
	text-align:center;
}
#formBtnBox{
	max-width:320px;
	width:100%;
	margin:10px auto 0;
	display:flex;
	justify-content: space-between;
}
.kakuninBtn{
	width:200px;
}
.kakuninBtn input{
	width:200px;
	height:40px;
	cursor:pointer;
	outline:none;
	background-color:var(--themecolor);
	color:white;
	border:none;
	letter-spacing:1px;
	transition:.3s;
	font-weight:500;
	font-size:1.5rem;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
}
.kakuninBtn input:hover{
	background-color:var(--hovercolor);
}
.returnBtn input{
	height:40px;
	outline:none;
	border:none;
	padding:5px 20px;
	background-color:#7c7c7c;
	border:1px solid #7c7c7c;
	transition:.3s;
	font-weight:500;
	font-size:1.5rem;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	color:#fff;
}
.returnBtn input:hover{
	background-color: #515151;
	border:1px solid #515151;
}
.confirmForm span.required{
	display:none;
}
#contactForm select{
	-webkit-appearance: checkbox;
}
.sent #formBox{
	display: none;
}
.sentout_message{
	display: none;
}
.sent .sentout_message{
	display: block;
}
.wpcf7-radio .wpcf7-list-item {
  	display:block;
  	margin:2px 0 2px 2px;
  	width: 45%;
	float:left;
}
.wpcf7-radio label{
	width:100%;
}
.wpcf7-radio label input:checked{
	border:none;
}

/*送信成功*/
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:rgba(60,108,149,0.9);
}
.hosoku-txt,.hosoku-txt1{
	color:#575757;
	font-size:85%;
	line-height:1.4em;
}
.hosoku-txt{
	margin-left:8px;
}
.hosoku-txt1{
	margin-top:10px;
	padding-left: 14px;
	text-indent: -14px;
}
.hosoku-txt2{
	margin-top:3px;
	color:#ff0000;
	font-size:85%;
	line-height:1.4em;
}
.messe-end{
	clear:both;
	text-align:center;
}
.messeEndTxt{
	font-size:120%;
}
::placeholder{
	font-size:90%;
}
.formOnamae{
	margin:0 auto;
	font-size:90%;
	display:block;
}
.formOnamaeKoumoku{
	font-size:90%;
	display:block;
}
.formFrigana{
	margin:0 auto;
	font-size:90%;
	display:block;
}
@media screen and (max-width: 1300px) {
.zipCode input{
	width:20%!important;
}
.todoufuken select{
	width:22%!important;
	max-width: 23%!important;
}	
}
@media screen and (max-width: 1160px) {
.contactWrapper{
	max-width:100%;
}
}
@media screen and (max-width: 1000px) {
.contact_wrapper{
	width:100%;
}
#contactForm{
	width:100%;
}
#contactForm th{
	width:100%;
	display:block;
	padding:2% 0 0 0;
}
#contactForm td{
	width:100%;
	display:block;
	padding:1% 0 2% 0;
}
#contactForm input.wpcf7-text, #contactForm input.wpcf7-email, #contactForm input.wpcf7-textarea {
	width:93%;
	max-width:93%;
}
#contactForm input.p-postal-code{
	max-width:100%;
	width:auto;
}
span.required{
	display:inline-block;
	margin:0 0 0 2%;
}
.hosoku-txt{
	margin-top:10px;
}
.formOnamae{
	margin:0 auto 5px auto;
}
.formFrigana{
	margin:0 auto 5px auto;
}
#sendingTxt{
	text-align:left!important;
}
}
@media screen and (max-width: 770px) {
.contactUpTxt{
	text-align:left;
}
.zipCode input{
	width:93%!important;
}
.todoufuken select{
	width:95%!important;
	max-width: 97%!important;
}
.wpcf7-radio .wpcf7-list-item {
  	width: 97%;
	float:none;
}
.wpcf7-radio label {
  width: 100%;
	display:block;
	margin:0 0 2px 0;
}
}
@media screen and (max-width: 640px) {

#contactForm th{
	padding:5% 0 0 0;
}
#contactForm td{
	padding:1% 0 5% 0;
}
#contactForm input.wpcf7-text, #contactForm input.wpcf7-email {
	width:94%;
	max-width:94%;
	margin:0 auto;
}
#contactForm input.wpcf7-textarea {
	width:97%;
	max-width:97%;
	margin:0 auto;
}
.messe-end{
	text-align:left;
}
}
@media screen and (max-width:480px) {
#sendingCheck{
	font-size:95%;
}
input[type="checkbox"] {
  	width: 20px;
  	height: 20px;
}
input[type="checkbox"]:checked:before {
  	top: 2px;
  	left: 6px;
  	width: 4px;
  	height: 8px;
}
#sendingCheck .wpcf7-list-item-label {
    margin: 0 0 0 2px;
}
#caveat {
    text-align: left;
	line-height:160%;
}
}

/******************
プライバシーポリシー
******************/

.pp-txt{
	clear:both;
	margin:0 auto;
}

.pp-txt1{
    text-indent: -1em;
    padding-left: 15px;
	margin:10px 0 5px 0;
}

@media screen and (max-width: 1130px) {

.pp-txt{
	width:100%;
	margin-bottom:4px;
}

.pp-txt1{
	text-indent: -1em;
    padding-left: 15px;
}

}


/******************
サイトマップ
******************/

.sitemapWrap{
	width:100%;
	margin:0 auto;
	overflow:hidden;
	padding-top:10px;
}
.sitemap{
	float:left;
	width:50%;
	margin:0 auto ;
	overflow:hidden;
}
.sitemap ul li{
	width:97%;
	position: relative;
	padding:0 0 60px 15px;
}
.sitemap ul li::before {
  display: block;
  content: '';
  position: absolute;
  top: 15px;
  left: 1px;
  width: 8px;
  height: 8px;
  background-color:var(--themecolor);
  border-radius: 100%;
}
.sitemap ul li a{
	width:100%;
	display:block;
	color:var(--basecolor);
	text-decoration:none;
	font-size:1.7rem;
	font-weight:400;
	transition:.3s;
}
.sitemap li a:hover{
	color:var(--themecolor);
	text-decoration:underline;
}
.sitemap ul li a:hover.smNoLink{
	pointer-events:none;
	text-decoration:none;
}
.sitemap ul li ul li{
	width:95%;
	position: relative;
	padding:8px 0 8px 16px;
}
.sitemap ul li ul li::before {
  display: block;
  content: '';
  position: absolute;
  top: 26px;
  left: 2.5px;
  width: 10px;
  height: 1px;
  background-color:var(--basecolor);
  border-radius: unset;
}
.sitemap ul li ul li a{
	width:100%;
	display:block;
	color:var(--basecolor);
	text-decoration:none;
	font-weight:400;
	font-size:1.5rem;
}

@media screen and (max-width: 770px) {
.sitemap{
	float:none;
	width:100%;
}
.sitemap ul li{
	float:none;
	width:95%;
	padding:0 0 40px 15px;
}
.sitemap ul li::before {
  top: 13px;
}
}



/******************
404
******************/
.txt404{
	padding:0 0 3% 0;
}
.txt404 p{
	clear:both;
	text-align:center;
}
.btn404{
	width:35%;
	margin:60px auto 20px auto;
}
.btn404 a{
	display: block;
	border: 1px solid var(--themecolor);
	color:var(--themecolor);
	padding: 15px 0;
	text-align: center;
	position: relative;
	width: 100%;
	text-decoration: none;
	background:#fff;
	letter-spacing: 0.5px;
	border-radius:40px;
	-moz-border-radius:40px;
	-webkit-border-radius:40px;
	font-size:110%;
}
.btn404 a:hover{
	background:var(--themecolor);
	color:#fff;
	transition: 0.3s;
}
@media screen and (max-width: 770px) {
.btn404{
	width:90%;
}
.btn404 a{
	padding: 15px 0;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	font-size:95%;
}
.txt404 p{
	text-align:left;
}
}


/******************
お知らせ
******************/
#infoBox{
	margin:15px auto;
	width:100%;
	overflow:hidden;
}
#infoBox ul{
	clear:both;
	overflow:hidden;
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#infoBox li{
	width:29%;
	margin:1% 2% 4% 2%;
	overflow:hidden;
	position:relative;
}
#infoBox li a{
	display:block;
}
#infoBox .newsImage{
	background:var(--themecolor);
	object-fit:cover;
	width:100%;
	height:260px;
	object-position:center;
}
#infoBox li a .infoDate{
	width:100%;
	font-size:1.3rem;
	padding:5px 0 0 0;
	display:block;
}
#infoBox li a .infoTitle{
	clear:both;
	display:block;
	width:100%;
	line-height:3rem;
	font-size:1.7rem;
}
#infoBox li a:hover{
	display:block;
	color:var(--themecolor);
}
#infoBox li a:hover .newsImage{
	background:var(--themecolor);
	opacity:0.6;
	-moz-opacity:0.6;
	-webkit-opacity:0.6;
	overflow:hidden;
}
#infoBox li a:hover .newsImage img{
transform: scale(1.1,1.1);
  	-webkit-transform: scale(1.1,1.1);
  	-moz-transform: scale(1.1,1.1);
  	transition: .3s all;
}

@media screen and (max-width: 1300px) {
#infoBox .newsImage{
	height:220px;
}
}
@media screen and (max-width: 1000px) {
#infoBox ul{
	flex-wrap:wrap;
	
}
#infoBox li{
	width:48%;
	margin:1% 0 4% 0;
}
}
@media screen and (max-width: 640px) {
#infoBox ul{
	clear:both;
	overflow:hidden;
	width:100%;
	display:block;
}
#infoBox li{
	width:84%;
	margin:1% auto 7% auto;
}
#infoBox li:last-child{
	margin:1% auto;
}
#infoBox .newsImage{
	height:auto;
}
}
@media screen and (max-width: 440px) {
#infoBox li{
	width:90%;
}
}

