@charset "utf-8";

/*全体-------------------------------------------------------------------**/

main { 
  margin-top:100px;
  overflow: hidden;
  }

main section{
  margin-bottom: 80px !important;
}

.wrap {
  overflow-x: hidden;
 }

.inner_wide {
    max-width: 1600px;
    margin: auto;
}

/* 共通 -------------------------------------------------------------------*/

.mv {
  background-color:var(--main-color);
  background-image: url(../../images/common/bg-mv-main.jpg?ver=1);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.about .mv {
  background-image: url(../../images/common/bg-mv-main.jpg?ver=1);
}

.guideline .mv {
  background-image: url(../../images/common/bg-mv-guideline.jpg);
}

.schedule .mv {
  background-image: url(../../images/common/bg-mv-schedule.jpg);
}

.works .mv {
  background-image: url(../../images/common/bg-mv-works.jpg);
}

.mv .inner {
  position: relative;
  height: 234px;
  z-index: 1;
}
/*
.mv .inner:after {
	width: 100%;
	content: "";
	position: absolute;
	min-height: 234px;
	background-color: var(--main-color);
	top: 0;
	left: -65%;		
}
*/

.mv .ttl_h1::first-line {
  font-family: var(--headline-font-family);
  display: block;
  font-size: 5rem;
  padding: 0 0 12px 0;
  color: var(--main-color);
  font-weight: 600;
  letter-spacing: 0.02em;
}

.error404 .mv .ttl_h1 span{
  font-size: 5rem;
  color: var(--main-color);
  font-weight: 600;
  letter-spacing: 0.02em;
}

.privacypolicy .mv .ttl_h1::first-line {
  font-size: 4.25rem;
  letter-spacing: 0em;
}

.mv .ttl_h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%.-50%);
  font-weight: 500;
  color: var(--color-gray03);
  line-height:1.5;
  text-align: center;
  z-index: 2;
}

.about .table_block{
  margin-bottom: 70px !important;
}

body .wp-block-group .is-layout-flex {
  justify-content: space-between;
}

/* パンクズ -------------------------------------------------------------------*/

.bread {
  text-align: right;
  margin: 15px 0 0 0 ;
}
.bread a,.bread span {
  font-size: 0.875rem;
}
.bread a {
    color:var(--base-font-color);
	text-decoration: underline;
	text-decoration-color: var(--base-font-color);
	text-decoration-style: dotted;
	text-underline-offset: 5px;
}

/* anchor link -------------------------------------------------------------------*/
.anc {
  text-align: center;
  margin: 64px 0 80px;
}
.anc li {
  display: inline-block;
  margin: 0 10px;
}
.anc li a {
  display: block;
  font-weight: bold;
  font-size: 1.125rem;
  background: url(../../images/common/bg-anc02.svg?ver=1) no-repeat center bottom;
  /*filter: invert(49%) sepia(57%) saturate(1754%) hue-rotate(116deg) brightness(95%) contrast(98%);*/
  padding: 0 15px 30px; /*0 30px 30px 30px;*/
  background-size: 136px;
  text-decoration: none !important;
}

/*.anchor:target{
   margin-top:-110px !important;
   padding-top:110px !important;
}*/


/* pager -------------------------------------------------------------------*/

.pager {
  position: relative;
  text-align: center;
  margin: 90px 0;
}
.pager:empty{
  display: none;
}
.pager .pages {
  display: none;

}
.wp-pagenavi a.page,
.wp-pagenavi span {
  border: none !important;
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px;
  padding: 10px 13px !important;
}
.wp-pagenavi .current {
  color: #fff;
  background-color: var(--main-color);
}
.pager .previouspostslink {
  display: inline-block;
  font-weight: normal;
  font-size: 1.0625rem;
  width: 104px;
  padding: 1em 0;
  border: 1px solid var(--main-color);
  padding-left: 20px;
  position: absolute;
  left: 0;
  top: -8px;
}
.pager .nextpostslink {
  display: inline-block;
  font-weight: normal;
  font-size: 1.0625rem;
  width: 101px;
  padding: 1em 0;
  border: 1px solid var(--main-color);
  padding-right: 20px;
  position: absolute;
  right: 0;
  top: -8px;
}


.pager a.previouspostslink,
.pager a.nextpostslink{
  color: var(--main-color) ;
}

.pager a.previouspostslink:hover,
.pager a.nextpostslink:hover{
  color: var(--main-color) ;
  border: 1px solid var(--main-color);
}

.pager a.nextpostslink:after {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: solid 2px var(--main-color);
  border-right: solid 2px var(--main-color);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}

.pager a.previouspostslink:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: solid 2px var(--main-color);
  border-left: solid 2px var(--main-color);
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  left: 20px;
  bottom: 0;
  margin: auto;
}

/* プライバシーポリシー -------------------------------*/

.policy h3{
	color: var(--point-color);
	font-weight: bold;
	font-size: 1.125rem;
	margin: 2em 0 1em;
	background: #f3f3f3;
	padding: 0.8em;
	line-height: 1.6em;
}

.policy p{
	font-size: 1rem;
	overflow-wrap:break-word;
	word-wrap:break-word;
}

.input_btm10 {
	margin-bottom: 10px;
}


/*お知らせ-------------------------------------------------------------------*/

#primary {
    width: 78%;
    float: left;
}
#sidebar {
    width: 18%;
    float: right;
}
#primary .txt a {
    text-decoration: underline;
    color: #0084b4;
}
.important_info .txt {
    line-height: 1.6;
}
.important_info {
    background-color: #ffecec;
    padding: 17px;
}
.none01.none02 .important_info {
    display: none;
}
.important_info .box_border .ttl span {
    background-color: #ffecec;
}
.important_info h2.caution {
    background-color: #fff;
}
.single_article {
    overflow: hidden;
    padding-bottom: 35px;
    margin-bottom: 35px;
    border-bottom: 0px solid #dcdcdc;
}
.single_article a {
    display: block;
}
.single_article .img {
    width: 155px;
    height: 128px;
    overflow: hidden;
    position: relative;
    float: left;
}
.single_article .img img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto;
}
.single_article .text {
    width: calc(100% - 185px);
	min-height:128px;
    margin-left: 30px;
	padding-bottom:0.5rem;
    float: left;
	border-bottom: 1px solid var(--line-color)/*#dcdcdc*/;
}
.icn_cat {
    font-size: 0.875rem;
    color: var(--base-font-color);
	border: 1px solid var(--base-font-color);
    background-color: #fff;
/*    max-width: 100px; */
    width: auto;
    display: inline-block;
    padding: 5px 10px 6px 10px;
    text-align: center;
    margin-right: 20px;
	border-radius:6px;
}
.single_article .date {
    margin-bottom: 20px;
}
.single_article .ttl {
    color: var(--base-font-color);
    line-height: 1.4;
    margin-bottom: 1em;
    font-weight: bold;
    font-size: 1.25rem;
}
.single_article .text p {
    line-height: 1.4;
}
#sidebar .side_ttl {
	/*font-family: "Poppins", sans-serif;*/
    color: #fff;
    background: var(--main-color);
    padding: 17px 0;
    text-align: center;
    margin-bottom: 25px;
    font-size: 1rem;
	border-radius:10px;
}
#sidebar ul {
    padding-left: 15px;
}
#sidebar ul li:before {
    content: "■";
    color: var(--point-color);
    font-size: 7px;
    vertical-align: middle;
    margin-right: 10px;
}
#sidebar ul li:not(:last-child) {
    margin-bottom: 25px;
}
#sidebar ul.children {
  margin-top: 0.8em;
}
#sidebar .archive_area {
    padding-left: 15px;
}
#sidebar .archive_area h4 {
    margin-bottom: 25px;
    cursor: pointer;
}
#sidebar .archive_area h4:before {
    background-image: url('../../images/common/icn-plus.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color:var(--point-color);
    content: '';/*url(../../images/common/icn-plus.svg)*/
    margin-right: 5px;
    display: inline-block;
	text-align: center;
	padding:0;
    box-sizing: border-box;
    width:13px;
    height:13px;
	line-height:13px;
    border-radius: 13px;
    color:var(--color-white);
}
#sidebar .archive_area h4.open:before {
    content: '';/*url(../../images/common/icn-minus.svg)*/
    background-image: url('../../images/common/icn-minus.svg');
	background-color:var(--point-color);
}
#sidebar .archive_area ul {
    display: none;
    padding-left: 20px;
}
#sidebar .archive_area li:before {
    margin-right: 5px;
}
.icn_prev a,
.icn_next a{
    display: inline-block;
	color: var(--point-white);
    font-weight: bold;
    font-size: 1.0625rem;
    width: 104px;
    text-align: center;
    padding: 1em 0;
    /*border: 1px solid var(--point-color);*/
	background-color: var(--color-white);
	border-radius:10px;
	padding-left:20px;
}

.icn_prev a:before {
    content: '';
    display: block;
    width: 0.5em;
    height: 0.5em;
    border-top: solid 1px var(--point-color);
    border-right: solid 1px var(--point-color);
    position: absolute;
    left: 22px;
    top: 0;
    bottom: 0;
    margin: auto;
    -ms-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.icn_prev {
    position: absolute;
    left: 0;
    top: 0;
}
.single-post .icn_prev {
    position:  relative;
    left: inherit;
    top: inherit;
    display: inline-block;
	width: 20vw;
}

.icn_next a {
    display: inline-block;
	color: var(--point-color);
    font-weight: bold;
    font-size: 1.0625rem;
    width: 104px;
    text-align: center;
    padding: 1em 0;
    /*border: 1px solid var(--point-color);*/
	background-color: var(--color-white);
	border-radius:10px;
	padding-right:20px;
}

.icn_next a:after {
    content: '';
    display: block;
    width: 0.5em;
    height: 0.5em;
    border-top: solid 1px var(--point-color);
    border-right: solid 1px var(--point-color);
    position: absolute;
    right: 22px;
    top: 0;
    bottom: 0;
    margin: auto;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.icn_next {
    position: absolute;
    right: 0;
    top: 0;
}
.single-post .icn_next {
    position:  relative;
    right: inherit;
    top: inherit;
    display: inline-block;
	width: 20vw;
 }
  
.to_list {
    position: absolute;
    left: 50%;
    top: 0;
	transform: translateX(-50%);
    display: inline-block;
	min-width: 210px;
	display: inline-flex;
    background: url(../../images/common/icn-arrow.svg?ver=1)no-repeat calc(100% - 18px) center;
    background-size: 19px;
    background-color: var(--color-gray02);
	color: var(--main-color);
    font-weight: 600;
    font-size: 1.125rem;
	line-height: 1.125rem;
    height: 50px;
/*    text-align: center; */
	padding-right: 45px;
	border-radius:10px 0;
	margin: 0 auto;
}

.single-post .to_list {
    position: relative;
	top: inherit;
	left: inherit;
	transform: translateX(0);
}

@media only screen and (max-width: 767px) {
  .page_navi .to_list {
    min-width: inherit;
    width: 38vw;
    display: inlin-block;
	font-size: 1rem;
    padding-right: 35px;
    background-size: 15px;
    background-position: calc(100% - 10px) center;
  }
}

.to_list a {
    display: flex;
	justify-content: flex-start;
	align-items: center;
	padding-left: 18px;
	/*height: 56px;*/
    /*color: var(--color-white);
    font-weight: normal;
    font-size: 1.0625rem;
    text-align: center;
    padding: 1em 0.5em 1em 0em;
    background-color: var(--point-color);*/
    width: 100%;
	margin: auto;
	border-radius:10px;
	position: relative;
}

/*.to_list a:after {
    content: '';
    display: block;
    width: 0.5em;
    height: 0.5em;
    border-top: solid 1px var(--color-white);
    border-right: solid 1px var(--color-white);
    position: absolute;
    right: 22px;
    top: 0;
    bottom: 0;
    margin: auto;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}*/
.page_navi {
    position: relative;
    margin-top: 80px;
    margin-bottom: 80px;
}

.single-post .page_navi {
  display: flex;
  align-content: center;
  justify-content: space-around;
  margin-bottom: 0;
}
.single-post .ttl_wrap .date {
    position: relative;
}
.single-post .ttl_wrap .date .date_wrap {
	padding-right:1em;
	position:relative;
	z-index:1;
}
.single-post .ttl_wrap .date:after {
    content: "";
    max-width: calc(100% - 300px);
    width: 80%;
    height: 1px;
    background: var(--point-color);
    position: absolute;
    right: 0;
    top: 13px;
}
.single_ttl {
    font-size: 1.875rem;
    line-height: 1.4;
    color: var(--base-font-color);
    margin: 1.2em 0;
	font-weight: bold;
}
#sidebar ul.mb60 {
	margin-bottom: 60px;
}
#sidebar .archive_area {
	margin-bottom: 40px;
}

body.contact .upToTop,
body.single-guideline .upToTop,
body.post-type-archive-guideline .upToTop {
	bottom: 94px;
}
.thanks {
	padding-top: 80px;
	margin-top: -80px;
}


/*社員紹介-------------------------------------------------------------------*/
.employee {
  padding:0;margin:0;
}
.employee .page_ttl {
  position: relative;
  height: calc(100vh - 101px);
  width: 350px;
  min-height: 800px;
  background: url(../../images/employee/bg-mv.jpg) no-repeat center top;
  background-size: cover;
  float: left;
}
.employee .page_ttl div {
  width: 227px;
  height: 225px;
  position: absolute;
  left: 0;
  right: 0;
  top:0;
  bottom: 0;
  margin: auto;
	display: flex;
	align-items: center;
}
.employee .page_ttl div {
	color: #fff;
}
.employee .page_ttl div span {
	display: block;
	line-height: 1;
}
.employee .page_ttl div span:nth-of-type(1) {
	font-size: 2.5rem;
	display: block;
	line-height: 1;
}
.employee .page_ttl div span:nth-of-type(2) {
	font-size: 1.25rem;
	font-weight: bold;
	margin-top: 0.5em;
}

.employee_wrap {
  min-width: 1425px;
  margin-bottom: 0;
  line-height:0;
}
.employee_inner {
  width: calc(100% - 350px);
  float: left;
  letter-spacing: -.4em;
}

.employee_inner a.box {
  width: 33.333333333333333% !important;
  min-width: 357px;
}

.employee_inner .box {
  width: 100% !important;
  min-width: 357px;
  background-size: cover;
  height: calc(100vh - 101px);
  position: relative;
  letter-spacing: normal;
  display: inline-block;
  min-height: 800px;
}

.employee_inner .box .ttl {
  font-size: 2.6rem;
  line-height: 1.4;
  margin-bottom: 0;
  min-height: 266px;
}
.employee_inner .box .txt {
  padding-left: 10px;
}

@media only screen and (max-width:1540px) and (min-width:800px) {
  .employee_inner .box .txt p {
    font-size: 0.9rem;
    letter-spacing: -0.5px;
  }
}

.employee_inner .box_inner {
  position: absolute;
  bottom:40px;
  padding: 0 30px;
}

/*インタビュー-------------------------------------------------------------------*/

.interview_wrap {
  overflow: hidden;
  line-height: 0;
}

.interview_wrap .slick-dots li {
  position: relative;
  display: inline-block;
  width: 42px;
  height: 6px;
  margin: 0 5px;
}
.interview_wrap .slick-dots li {
  width: 42px;
  height: 6px;
  margin: 0 5px 1rem 5px;
  padding: 0;
  cursor: pointer;
  z-index: 1001;
}
.interview_wrap .slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 42px;
  height: 6px;
  padding: 5px;
}
.interview_wrap .slick-dots li button:before {
  content: "";
  display: block;
  line-height: normal;
  position: absolute;
  top: 0;
  left: 0;
  width: 42px;
  height: 6px;
  text-align: center;
  opacity: 1;
  background-color: #fff;
}
.interview_wrap .slick-dots {
  max-width: 660px;
  margin: 0 10% 0 auto;
  bottom: 10px;
  left: 0;
  right: 0;
  text-align: center;
}
.interview_wrap .slick-dots li.slick-active button:before {
  opacity: 1;
  background-color: var(--accent-color02);
}


/*.interview_wrap .arrows {
  width: 660px;
  margin-left: 10%;
  position: relative;
  height: 30px;
  top: -62px;
  z-index: 1000;
}*/

.interview_wrap .arrows .slick-prev {
  left: 0;
  width: 78px;
  height: 98px;
  top: 50vh;
  background-color:var(--point-color);
}
.interview_wrap .arrows .slick-prev:before {
  width: 0;
  height: 0;
  margin:0 auto;
  /*background: url(../../images/employee/icn-prev.jpg) no-repeat left center;*/
  display:block;
  border-style:solid;
  border-width: 15px 20px 15px 0;
  border-color: transparent #FFFFFF transparent transparent;
  text-indent: -9999px;
}
.interview_wrap .arrows .slick-next {
  width: 78px;
  height: 98px;
  right: 0;
  top: 50vh;
  background-color:var(--point-color);
}
.interview_wrap .arrows .slick-next:before {
  width: 0;
  height: 0;
  margin:0 auto;
  /*width: 78px;
  height: 98px;
  background: url(../../images/employee/icn-next.jpg)  no-repeat left center;*/
  display: block;
  border-style:solid;
  border-width: 15px 0 15px 20px;
  border-color: transparent transparent transparent #FFFFFF;
  text-indent: -9999px;
}
.interview_wrap .slick-dotted.slick-slider {
  margin: 0;
}



.interview_list {
  text-align: center;
  padding: 48px 0;
  }
.interview_list ul {
  /*display: inline-block;*/
  margin:auto;
  display: flex;
  justify-content: center;
  align-items: center;
  }
.interview_list li {
  text-align: left;
  display: inline-block;
  margin-left: 30px;
  letter-spacing: -.4em;
}
.interview_list li:first-child {
  margin-left: 0;
}/**/
.interview_list li a {
  display: block;
  min-height:74px;
  /*position: relative;*/
}
.interview_list li div:after {
  content: "";
  width: 29px;
  height: 20px;
  background: url(../../images/common/icn-arrow.svg) no-repeat left center;
  background-size: 29px;
  display: block;
  position: absolute;
  right: 0;
  bottom:0px;
}
.interview_list li div {
  position: relative;
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: normal;
  width: 160px;
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
}
.interview_list li img {
  display: inline-block;
  width: 67px;
  vertical-align: middle;
}
.interview_list li div span {
  font-size: 0.875rem;
  font-weight: bold;
  margin-bottom: 10px;
  display: block;
  color: var(--main-color);
  padding-right: 1em;
}

/*.interview_list .btn_list {
  display: inline-block;
  margin-left: 55px;
  line-height:1.6em;
  vertical-align: middle;
}*/

.interview_inner .interview_slide {
  height: 100vh;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
  min-height: 940px;
}
.interview_inner .slide_inner {
  background-color: rgba(255,255,255,0.8);
  width: 660px;
  margin: 0 10% 0 auto;
  height: 100vh;
  min-height: 940px;
  padding: 27px 0 50px 54px;
}

.interview_inner .ttl {
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 1em;
  display: flex;
}
.interview_inner .ttl02 {
	margin-top: 1.5rem;
}
.interview_inner .ttl span {
	width: 1.5em;
}
.interview_inner .txt {
  padding-left: 42px;
  padding: 0 100px 0 42px;
  margin-bottom: 60px;
}

.interview_inner .main_ttl {
  margin-bottom: 25px;
  letter-spacing: normal;
  line-height: normal;
  position: relative;
}

.interview_inner .main_ttl:before {
  /*content: url(../../images/employee/bg-number_line02.png);*/
  content:"";
  position: absolute;
  left: 18px;
  top: 55px;
  display:block;
  width:1px;
  height:calc(100% - 55px);
  background-color:var(--main-color);
}

.interview_inner .interview_slide .main_ttl:before {
 　position: absolute;
   left: 18px;
   top: 90px;
   height:calc(100% - 90px);
}

/*.interview_inner .interview_slide.slide01 .main_ttl:before {
 　position: absolute;
   left: 18px;
   top: 90px;
   height:calc(100% - 90px);
}*/


/*.interview_inner .interview_slide:not(.slide01) .main_ttl:before ,
.employee .interview_inner .main_ttl:before {
 　position: absolute;
   left: 18px;
   top: 5.0vw;
   height:calc(75% - 5.0vw);
}

.interview_inner .interview_slide.slide01 .main_ttl:before {
 　position: absolute;
   left: 18px;
   top: 5.0vw;
   height:calc(75% - 5.0vw);
}*/

.interview_inner .main_ttl:after {
  /*content: url(../../images/employee/bg-number_line02.png);*/
  content:"";
  position: absolute;
  left: 16px;
  top: 100%;
  display:block;
  width:6px;
  height:6px;
  border-radius:50%;
  background-color:var(--main-color);
}

.interview_inner .interview_slide .main_ttl:after {
 　content:"";
  position: absolute;
  left: 16px;
  top: 100%;
}

/*.interview_inner .interview_slide.slide01 .main_ttl:after ,
.employee .interview_inner .main_ttl:before {
  position: absolute;
  left: 16px;
  top: 85%;
}*/

.interview_inner .main_ttl .main_header {
  margin-bottom: 35px;
}
.interview_inner .main_ttl .main_header .number {
  color: var(--main-color);
  font-size: 5.25rem;
  font-family:var(--headline-font-family);
  font-style: normal;
  letter-spacing: 0.04em;
  display: inline-block;
  width: 88px;
  line-height: 0.9;
 /* -webkit-text-stroke: 1px #000;
  text-stroke: 1px #000;*/
	font-weight: 500;
	position: relative;
}
.interview_inner .main_ttl .main_header .number span:not(.bg_num) {
	position: relative;
	z-index: 1;
}
.interview_inner .main_ttl .main_header .number .bg_num {
	color: var(--num-color01);
	position: absolute;
	left: 3px;
	top: 3px;
}
.interview_inner .main_ttl .main_header div:last-child { 
	width: calc(100% - 168px);
	display: inline-block;
	margin-left: 20px;
	vertical-align: top;
}
.interview_inner .main_ttl .main_header div:last-child span:first-child {
  font-size: 1.4375rem;
  color: var(--main-color);
  font-family:var(--headline-font-family);
  font-weight: normal;
  letter-spacing:0.04em;
  display: block;
  line-height: 1;
  margin-bottom: 5px;
}
.interview_inner .main_ttl .main_header div:last-child span:last-child {
  display: block;
  color: #fff;
  font-weight: bold;
  background-color: var(--main-color);
  border-radius:10px;
  padding: 3px 24px 3px 12px !important;
  font-size: 1.125rem;
  /*width: calc(100% + 49px);*/
  
}

.single .interview_inner .main_ttl .main_header div:last-child span:last-child {
  border-radius:10px 0 0 10px !important; 
  width: calc(100% + 56px);
}
.interview_inner .main_ttl .catch {
  font-size: 1.75rem !important; /*2.4rem*/
  font-weight: bold;
  line-height: 1.3;
  margin-left: 38px;
  display: none;
  letter-spacing:-0.02em;
}

@media screen and (min-width: 768px) and (max-width: 1460px) {
	/* タブレット */
	.interview_inner .main_ttl .catch {
      font-size: 1.5rem !important;
    }
}

.employee .interview_inner .main_ttl .catch {
  display: block;
  font-size: 2rem;
	position: relative;
}
.employee .interview_inner .main_ttl .catch .p01 {
	position: relative;
	z-index: 1;
	text-shadow: 2px 2px 0 #fff,2px 2px 0 #fff,2px 2px 0 #fff;
}
.interview_inner .main_ttl .name_area {
  margin: -20px 0 32px 60px;
}

.interview_inner .interview_slide.slide01 .main_ttl .name_area {
  margin: 20px 0 30px 0;
}

.interview_inner .main_ttl .name_area .name {
  color: var(--point-color);
  font-size: 3.625rem;
  font-weight: bold;
  padding-left: 42px;
  display: inline-block;
  line-height: 1.15;
}
.interview_inner .main_ttl .name_area div:last-child {
  display: inline-block;
  margin-left: 10px;
  vertical-align: top;
  line-height:1.6;
}
.interview_inner .main_ttl .name_area div:last-child span:first-child {
  color: var(--point-color);
  /*font-family: "Poppins", sans-serif;*/
  letter-spacing: 0.1em;
  display: block;
  padding-top: 6px;margin-bottom: 0;
}
.interview_inner .main_ttl .name_area div:last-child span:last-child {
  display: block;
  width: 130px;
  color: #fff;
  font-weight: bold;
  background-color: var(--accent-color02);
  border-radius:6px;
  padding: 1px 10px;
}
.interview_inner .main_ttl .interview_ttl {
  color: var(--main-color);
  font-size: 1.43rem;
  letter-spacing: 0.04em;
  padding-left: 42px;
  padding-right: 15px;
  font-weight: bold;
  display:flex;
  justify-content: flex-start;
  align-items:center;
  
}
.interview_inner .main_ttl .interview_ttl p:first-child {
  /*font-family: "Poppins", sans-serif;*/
  font-weight: normal;
  white-space: nowrap;
  /*display: inline-block;*/
}
.interview_inner .main_ttl .interview_ttl p:last-child {
  /*display: inline-block;*/
  margin-top:0;
  margin-left: 5px;
  /*vertical-align: top;
  line-height: 1.3;
  margin: 5px 0 0 5px;*/
}

.interview_inner .interview_slide.slide01 .main_ttl .catch {
  display: block;
}
.interview_inner .flow_table {
  line-height: normal;
  padding: 0 0 30px 0;
  background-color: rgba(255,255,255,0.7);
  margin-left: 36px;
  margin-right: 100px;
}
.interview_inner .flow_table div {
 font-size: 1.125rem;
  font-weight: bold;
  color: #e5151f;
  background-color: rgba(255,222,0,0.7);
  text-align: center;
  margin-bottom: 30px;
}
.interview_inner .flow_table div span {
  padding: 3px 0;
  background-image: url(../../images/employee/table_ttlLeft.png), url(../../images/employee/table_ttlRight.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left center, right center;
}
.interview_inner .flow_table table {
  letter-spacing: normal;
  line-height: 1.4;
  width: 100%;
}
.interview_inner .flow_table tr {
  
}
.interview_inner .flow_table th {
  padding: 0 0 20px 30px;
  width: 110px;
  font-weight: bold;
  color: #e5151f;
}
.interview_inner .flow_table td {
  padding: 0 30px 20px 0;
  font-size: 0.875rem;
}
.interview_inner .flow_table td  span {
  display: block;
  font-weight: bold;
  font-size: 1rem;
  margin-bottom: 2px;
}
.employee .interview_inner .main_ttl .main_header div:last-child span:first-child {
  font-size: 1rem;
}
.employee .interview_inner .main_ttl .main_header .number {
  font-size: 3.25rem;
  width: 61px;
  line-height: 1;
}
.employee .interview_inner .main_ttl .main_header div:last-child {
  width: auto;
}
.employee .interview_inner .main_ttl .main_header div:last-child span:last-child {
  font-size: 0.85rem;
    line-height: 1;
    padding: 5px 12px;
	line-height: 1.5;
}
@media all and (-ms-high-contrast: none){
.employee .interview_inner .main_ttl .main_header div:last-child span:last-child {
  font-size: 0.85rem;
    line-height: 1;
    padding: 6px 12px 4px 12px
}
  .interview_inner .main_ttl .main_header div:last-child span:last-child {
    padding: 6px 12px 1px 12px
  }
  .interview_inner .main_ttl .name_area div:last-child span:last-child {
    line-height: 1;
    padding: 7px 10px 1px 10px;
    }
}

.employee_inner .box .btn_std {
  position: absolute;
  right: 20px;
  bottom:20px;
}

.employee_inner .box_inner {
  bottom: inherit;
  top:360px;
}
.employee_inner .slick-track {
  margin: 0 auto 0 0 !important;
}
.employee_inner .slick-next {
  right: 0 !important;
}

/*採用情報-------------------------------------------------------------------*/
main section#job_list{
  margin-bottom: 0 !important;
}
.recruit_list #sec01 {
/*  background: url(../../images/recruit/bg-lead.jpg) no-repeat center bottom;
  background-size: cover;
  */
  padding: 5em 0 5em;
  margin-top:-32px;
  margin-bottom:0 !important;
}
@media only screen and (min-width: 768px) {
  .recruit_list #sec01 .txt {
    width: 95%;
    padding: 0;
  }
}
.recruit_list .txt p{
  letter-spacing: .02em;
  font-size: 1.125rem;
}

@media only screen and (max-width: 767px) {
  .recruit_list .txt p{
    font-size: 1.05rem;
  }
}

.recruit_list #sec02 {
  margin-bottom: 0 !important; /*65px*/
}
.recruit_list #sec02 .txt {
  width: 100%;
  margin-left: auto;
  position: relative;
  padding-top: 20px;
}
.recruit_list #sec02 .txt p{
  font-size: 1rem;
}
.recruit_list #sec02 .txt:before {
  content: "";
  width: 844px;
  height:250px;
  background: url(../../images/recruit/bg-blue.jpg);
  position: absolute;
  left: calc(100% - 1540px);
  top: 0;
}
.recruit_list #sec02 .txt .ttl {
  font-size: 1.375rem;
  font-weight: bold;
  color: #002d82;
  text-indent: -0.5em;
}
.recruit_list #sec03 {
  /*background: url(../../images/common/bg-footer.jpg);
  background-color: var(--table-bg);*/
  padding-top:48px;
  padding-bottom:55px;
}
.recruit_list #sec03 .ttl {
  font-size: 1.375rem;
  font-weight: bold;
  color: var(--main-color);
  text-align: center;
  margin-bottom: 2em;
  align-items: center;
  display: flex;
  justify-content: center;
}

.recruit_list #sec03 .ttl::before,
.recruit_list #sec03 .ttl::after {
  background-color: var(--main-color);
  content: "";
  height: 1px;
  width: 40px;
}
.recruit_list #sec03 .ttl::before {
  margin-right: 15px;
}
.recruit_list #sec03 .ttl::after {
  margin-left: 15px;
}

/*.recruit_list #sec03 .ttl span {
  background-image: url(../../images/recruit/bg-line01.png), url(../../images/recruit/bg-line01.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left center, right center;
  padding: 0 55px;
}*/
.recruit_list #sec03 li {
  display: inline-block;
  /*background: url(../../images/common/icn-dot_blue.jpg) no-repeat left 7px;*/
  padding: 0 0 0 20px;
  margin: 0 0 25px 0;
  width: 50%;
  position: relative;
}

.recruit_list #sec03 li::before {
   content: "";
   position: absolute;
   top: 50%;
   left: 0.5em;
   transform: translateY(-50%);*/
   display: block;
   width: 5px;
   height: 5px;
   background-color: var(--accent-color02);
}
.recruit_list #sec03 li:nth-of-type(3),.recruit_list #sec03 li:nth-of-type(4) {
  margin-bottom: 0;
}


@media only screen and (max-width: 767px) {
  .recruit_list .message-box{
    gap: 0 !important;
  }
}

.recruit_list #sec01 .ttlLead01 {
	text-align: center;
	font-family: var(--headline-font-family);
	margin-bottom: 1.5em;
	line-height: 1.5;
	letter-spacing: 0.12em;
	font-size: 2.5rem;
	font-weight: 400;
}

.recruit_list .small_h2ttl{
    color: var(--main-color);
    font-size: 1.25rem;
	font-weight: 500;
	margin: 0 0 20px;
	padding-left: 100px;
	position: relative;
}

@media only screen and (max-width: 767px) {
  .recruit_list .small_h2ttl{
    font-size: 1.15rem;
	margin: 0 0 20px;
	padding-left: 100px;
  }
}

.recruit_list .small_h2ttl::before{
    content: '';
	background: url('../../images/common/line_gray.svg') no-repeat 0 center / auto 100%;
    display: block;
    position: absolute;
    height: 7px;
	left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 0;
	width: 74px;
}

.recruit_list .h3ttl{
    color: var(--main-color);
    font-size: 2.125rem;
	font-weight: bold;
	margin: 0 auto 40px;
}

@media only screen and (max-width: 767px) {
  .recruit_list .h3ttl{
    font-size: 1.6875rem;
	margin: 0 auto 30px;
  }
}

.recruit_list .h3ttl span{
    display: inline-block;
}

.recruit_list .h3ttl span::before,
.recruit_list .h3ttl span::after{
   display: inline-block;
   vertical-align: top;
}

.recruit_list .h3ttl span::before{
   content: '“';
}

.recruit_list .h3ttl span::after{
   content: '”';
}


.recruit_list .img_box img{
    display: block;
	margin: 0 auto 40px;
    max-width: 420px;
    width: 100%;
}

@media only screen and (max-width: 767px) {
  .recruit_list .img_box img{
    margin: 0 auto 30px;
  }

}

.recruit_list .img_box p{
    margin: 0 auto;
	text-align: center;
}


.feeling_box .ttl{
  color: var(--main-color);
  font-size: 1.375rem;
  font-weight: 600;
  margin-bottom: 50px;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .feeling_box .ttl{
    font-size: 1.3rem;
    margin-bottom: 30px;
  }
}

.feeling_box .ttl span{
  display: inline-block;
  position: relative;
  line-height: 1.5;
}

.feeling_box .ttl span::before,
.feeling_box .ttl span::after{
  content: '';
  background:  var(--main-color);
  display: block;
  height: 1px;
  position: absolute;
  top: 50%;
  transform: translateY(-51%);
  width: 54px;
}

.feeling_box .ttl span::before{
  left: -70px;
}
.feeling_box .ttl span::after{
  right: -70px;
}

@media only screen and (max-width: 767px) {
  .feeling_box .ttl span::before,
  .feeling_box .ttl span::after{
    width: 30px;
  }
  
  .feeling_box .ttl span::before{
    left: -40px;
  }
  .feeling_box .ttl span::after{
    right: -40px;
  }

}

.feeling_box ul{
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.feeling_box ul li{
  font-weight: 600;
  margin-bottom: 20px;
  line-height: 1.5;
  padding-left: 15px;
  position: relative;
  width: 50%;
}

@media only screen and (max-width: 767px) {
  .feeling_box ul li{
    margin: 0 auto 15px;
    padding-left: 15px;
    width: 90%;
  }
}

.feeling_box ul li::before{
  background: var(--main-color);
  content: '';
  display: block;
  height: 5px;
  position: absolute;
  top: 10px;
  left: 0;
  width: 5px;
}


.bg_pink{
  background: var(--accent-color03);
  padding: 60px 0 40px;
}

@media only screen and (max-width: 767px) {
  .bg_pink{
    margin-bottom: 0 !important;
	padding-bottom: 50px;
  }
}

.bg_gray{
  background: var(--color-gray01);
  padding: 80px 0;
}
.flow_wrap {
  margin-bottom: 80px;
}
.flow_wrap ul {
  letter-spacing: normal;
  /*background: url(../../images/recruit/img-flow.png) no-repeat left top;
  padding-left: 190px;*/
}

.flow_wrap li:first-child {
  letter-spacing: normal;
  display: inline-block;
  width:180px;
  background-color:var(--main-color);
  color:var(--color-white);
  text-align: center !important;
  padding: 2.8em 0.5em 0 0.5em;
  border: 1px solid var(--main-color);
  min-height: 183px;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.flow_wrap li {
  letter-spacing: normal;
  width: 14.5%;
  display: inline-block;
  padding: 10px 14px 0 14px;
  border: 3px solid var(--color-gray02);
  background-color:#fff;
  min-height: 183px;
  position: relative;
  vertical-align: top;
  margin-left: 1.5%;
  border-radius:10px;
}
.flow_wrap li:after {
  content: url(../../images/common/arrow_line.svg);
  position: absolute;
  right: -22px;
  top: calc(50% - 12px);
}
.flow_wrap li:first-child:after,
.flow_wrap li:last-child:after {
  display: none;
}

.flow_wrap li:first-child h4.ttl {
  color: var(--accent-color01);
  font-size:2.2rem;
  font-family: var(--headline-font-family) !important;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.6;
  /*height: 51px;
  position: relative;
  width: 110%;
  margin-left: -5%;*/
}

.flow_wrap li:first-child p {
  font-size: 1.245rem !important;
  line-height:1.45;
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: 1.6;
  /*height: 51px;
  position: relative;
  width: 110%;
  margin-left: -5%;*/
}

.flow_wrap li p:nth-of-type(1) {
  font-size: 1.125rem;
  font-weight: bold;
  letter-spacing: 0.5px;
  line-height: 1.4;
  height: 51px;
  text-align: center;
  position: relative;
  /*width: 110%;
  margin-left: -7%;*/
}
.flow_wrap li p:nth-of-type(1) span {
  display: block;
  position: absolute;
  text-align: center;
  width: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.flow_wrap li p:nth-of-type(2) {
  font-size: 0.875rem;
  line-height: 1.4;
}
.flow_wrap li p:nth-of-type(2):before {
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  background-color: var(--main-color);
  margin: 5px auto 15px auto;
}
.cate_area {
  margin-bottom: 50px;
  text-align: center;
}
.cate_area span {
 /* font-family: "Poppins", sans-serif;*/
  font-size: 1.25rem;
  vertical-align: middle;
  margin-right: 30px;
}
.cate_area a {
  margin-right: 15px;
}
.cate_area a:after {
  content: "｜";
  margin-left: 15px;
}
.cate_area a:last-child:after {
  display: none;
}
.job_box {
  clear: both;
  margin-bottom: 35px;
  overflow: hidden;
}
.job_box:last-child{
  margin-bottom: 0;
}
.job_box .left {
  width: 34%;
  float: left;
  position: relative;
  z-index: 1;
}
.job_box .right {
  width: calc(66% + 50px);
  float: left;
  padding: 40px 20px 50px 100px;
  position: relative;
  margin: 0 0 0 -50px;
  background-size: cover;
  background-color: #ffffff;
  min-height: 320px;
  border-radius:10px;
}
.job_box .icn_new {
  position: absolute;
  left: 27px;
  top:23px;
  z-index: 2
}

.job_box .left img{
  border-radius:10px;
}
.job_box .right .ttl {
  font-size: 1.625rem;
  font-weight: bold;
  margin-bottom: 1em;
  line-height: 1.4;
  border-bottom: solid 1px #c5c5c5;
  padding-bottom: 14px;
}

.job_box .right dl .d_list {
  display:flex;
  justify-content: flex-start;
  align-items:flex-start;
  margin-bottom:0.8em;
  font-weight: bold;
}

.job_box .right dl .d_list dt {
  position: relative;
  padding-left: 20px;
  width: 160px;
}

.job_box .right dl .d_list dt::before{
  content:"";
  position: absolute;
  top: 50%;
  left: 0.5em;
  transform: translateY(-50%);
  display: block;
  width: 5px;
  height: 5px;
  background-color: var(--accent-color02);
}

.job_box .right dl .d_list dd {
  width: calc(100% - 160px);
}
.job_box .right dl .d_list dd div {
  margin-bottom: 10px;
  padding-right: 20px;
}
.job_box .right dl .d_list:last-child,
.job_box .right dl .d_list dd dd:last-child {
  margin-bottom: 0;
}


.job_box .txt {
  clear: both;
  font-size: 0.875rem;
  margin-top: 20px;
}

.btn_readmore {
  /*font-family: "Poppins", sans-serif;
  font-size: 0.75rem;
  color: var(--point-color);
  background: url(../../images/common/icn-arrow.svg) no-repeat right center;
  background-size: 29px;
  padding: 5px 39px 5px 0;*/
  
  font-size: 0.875rem;
  color: #fff;
  background-color: var(--main-color);
  width: 140px;
  height: 37px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: .65rem 1rem;
  position: absolute;
  right: 0;
  bottom: 0;
  border-top-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.btn_readmore::after {
  content: '';
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 1px var(--color-white);
  border-right: solid 1px  var(--color-white);
  position: absolute;
  right: .75rem;
  top: 0;
  bottom: 0;
  margin: auto;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.job_box .btn_readmore {
  position: absolute;
  right: 0px;
  bottom: 0px;
  display: inline-block;
}

#recruit {
  margin-top:64px;
}

main #recruit section#recruit_lead{
  margin-bottom:32px !important;
}

#recruit #recruit_lead .left {
  position: relative;
}
.icn_new {
  /*font-family: "Poppins", sans-serif;*/
  color: var(--accent-color01);
  font-size: 0.875rem;
  font-family: var(--headline-font-family) !important;
  font-weight: 600;
  background-color: var(--main-color);
  padding: 22px 0;
  width: 59px;
  text-align: center;
  border-radius:10px;
}
#recruit #recruit_lead .left {
  width: 34%;
  float: left;
  position: relative;
  z-index: 1;
}

#recruit #recruit_lead .left img{
  border-radius:10px;
  max-width: 100%;
  width: 100%;
}
#recruit #recruit_lead .right .icn_new {
  position: absolute;
	left: -31px;
	top: 19px;
    z-index: 2;
}
#recruit #recruit_lead .right {
  width: 66%;
  float: right;
  margin-bottom: 80px;
  position: relative;
}
#recruit #recruit_lead .box_message {
  clear: both;
}
#recruit #recruit_lead .right .ttl {
  font-size: 1.625rem;
  background-color:var(--color-gray01);
  font-weight: bold;
  line-height: 1.4;
  padding: 30px 20px 30px 50px;
  margin-bottom: 25px;
  border-radius:0 10px 10px 0;
}
#recruit #recruit_lead .right .txt .icn {
  background-color: var(--point-color);
  font-size: 0.875rem;
  padding: 5px 10px;
  color: #fff;
  font-weight: bold;
  margin-right: 15px;
  border-radius: 6px;
}
#recruit #recruit_lead .right .txt {
  padding-left: 50px;
}
#recruit #recruit_lead .right .txt p:first-child {
  font-weight: bold;
}
#recruit #recruit_lead .box_message {
  padding-right: 335px;
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
}
#recruit #recruit_lead .box_message .ttl {  
  background: url(../../images/recruit/bg-ttl02.jpg) no-repeat left center;
  font-size: 1.125rem;
  font-weight: bold;
  padding: 19px 0px 19px 150px;
}
#recruit #recruit_lead .box_message .txt {
  background-color: #fcfbe6;
  /*background: url(../../images/recruit/bg.jpg);
  background-size: cover;*/
  padding: 30px 40px;
  min-height: 185px;
  position: relative;
}
#recruit #recruit_lead .box_message .txt:after {
  content: url(../../images/recruit/img-baloon.png);
  position: absolute;
  right: -22px;
  top: calc(50% - 15px);
}
#job_detail .ttl_h2 {
  margin-top:48px;
  /*text-align: center;
  font-size: 2rem;
  color: #fff;
  background: var(--point-color);
  padding: 45px 0;
  font-weight: bold;
  margin-bottom: 80px;*/
  
}
/*#job_detail .ttl:after {
  content: "";
  width: 93px;
  height: 1px;
  background-color: #fff;
  display: block;
  margin: 17px auto 0 auto;
}*/

#job_detail .company_table { 
  margin-bottom:64px !important;
}
#job_detail .company_table th {
 /* background-image: url(../../images/common/icn-arrow_list.png);
  background-position: 5px 22px;*/
  width: 19%;
  /*padding-left:23px;*/
}

#job_detail .company_table td {
  line-height: 1.5;
  padding: 15px;
}
#job_detail .company_table .place span {
  /*color: #071c1f;*/
  font-weight: bold;
  margin-right: 1em;
}
#job_detail .company_table .place a {
  /*color: #071c1f;*/
}
#job_detail .company_table .place div {
  margin-bottom: 10px;  line-height:1.4em;
}
#job_detail .company_table .place div:last-child {
  margin-bottom: 0;
}
#job_detail .btn_mynavi {
  text-align: center;
  margin: 60px 0;
}

#job_detail .btn_area {
  text-align: center;
}

#job_detail .btn_area a{
  margin:0 auto !important;
}
/*.pager {
  position: relative;
  text-align: center;
  margin: 90px 0;
}
.pager .pages {
  display: none;

}
.wp-pagenavi a.page, .wp-pagenavi span {
  border: none !important;
  display: inline-block;
  vertical-align: middle;
  margin: 0 20px;
  padding: 5px 7px !important;
}
.wp-pagenavi .current {
  color: #fff;
  background-color: #e5151f;
}
.pager .previouspostslink {
  display: inline-block;
  width: 101px;
  height: 41px;
  background: url(../../images/recruit/btn-back.jpg) no-repeat left center;
  text-indent: -9999px;
  position: absolute;
  left: 0;
  top: -8px;
}
.pager .nextpostslink {
  display: inline-block;
  width: 101px;
  height: 41px;
  background: url(../../images/recruit/btn-next.jpg) no-repeat left center;
  text-indent: -9999px;
  position: absolute;
  right: 0;
  top: -8px;
}*/

.btn_area.guideline a{
  background-repeat: no-repeat;
  background-size: 185px auto;
  background-position: 0 center;
  background-color: var(--main-color);
  border-radius: 10px;
  color: var(--accent-color01);
  font-size: 1.625rem;
  font-weight: 600;
  padding: 25px 30px 25px 210px;
  position: relative;
  max-width: 520px;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .btn_area.guideline a{
    background-size: 40% auto;
    font-size: 1.15rem;
    padding: 20px 20px 20px 43.5%;
  }
}

.btn_area.guideline a.btn_voice{
  background-image: url('../../images/recruit/bg_voice.jpg');
}

.btn_area.guideline a.btn_benefit{
  background-image: url('../../images/recruit/bg_benefit.jpg');
}

.btn_area.guideline a span{
  display: block;
  color: var(--color-white);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 15px;
}

@media only screen and (max-width: 768px) {
  .btn_area.guideline a span{
    font-size: 12px;
    margin-top: 10px;
  }
}

.btn_area.guideline a::after{
  content: '';
  display: block;
  background: url(../../images/common/icn-arrow.svg?ver=1) no-repeat center / contain;
  height: 20px;
  position: absolute;
  right: 20px;
  top:50%;
  transform: translateY(-50%);
  width: 20px;
}

@media only screen and (max-width: 768px) {
  .btn_area.guideline a::after{
    right: 10px;
  }

}

/* 福利厚生 -------------------------------------------*/

.benefit_top{
    margin-top: 100px;
}

@media only screen and (max-width: 768px) {
  .benefit_top{
      margin-top: 60px;
  }
}

.sec_box { 
    align-items: flex-start;
    background: var(--color-white);
	border-radius: 20px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	margin-bottom: 75px !important;
    padding:0 40px 40px;
    width:100%; /*
   padding:20px 30px 40px;
   background-color: var(--table-bg);
   border-radius:10px;*/
 }
 
.wp-block-group__inner-container  .sec_box:last-child{
   margin-bottom: 0 !important;
 }
   
.sec_box .subttl2{  
    border-bottom: 3px solid var(--color-gray02);
    font-size: 2rem ;
	font-weight: bold; 
	color: var(--main-color); 
	margin: 0 10px 50px 110px;
	line-height: 1.2;
	padding: 35px 10px 30px;
	position: relative;
	width: calc( 100% - 110px );
}

@media only screen and (max-width: 768px) {
  .sec_box .subttl2{  
    font-size: 1.45rem ;
	margin: 0 10px 30px 90px;
	padding: 20px 5px 20px;
	width: calc( 100% - 105px );
  }

}

.sec_box .subttl2 .num{ 
  color:var(--color-white);
  display: inline-block;
  font-size: 3rem;
  width: 96px;
  height: 112px;
  background: var(--main-color);
  border-radius: 10px 0;
  line-height: 1.2;
  text-align: center;
  padding: 15px 0;
  position: absolute;
  top: -10px;
  left: -110px;
}

@media only screen and (max-width: 768px) {
  .sec_box .subttl2 .num{ 
    font-size: 2.5rem;
    width: 80px;
    height: 90px;
    padding: 15px 0;
    top: -10px;
    left: -90px;
  }
}

.sec_box .subttl2 .num::before{
  content: 'Benefit';
  color: var(--accent-color01);
  display: block;
  font-size: 1.25rem;
  font-weight: 500;
}

@media only screen and (max-width: 768px) {
  .sec_box .subttl2 .num::before{
    font-size: .95rem;
  }
}

.con_box { 
    padding:1.2em; 
/*	border-radius:10px; */
	width: 67.5%;
}

.img_box{
    width: 30%;
}
@media only screen and (max-width: 768px) {
  .img_box{
      margin-top: 1rem;
      width: 100%;
  }
  .img_box img{
      height: auto;
      max-width: 100%;
	  width: 100%;
  }
}
.con_box .line > li{ 
    position: relative;
	padding-left: 200px;
	line-height: 1.5;
}

@media only screen and (max-width: 768px) {
  .con_box .line > li{ 
     padding-left: 15px;
  }
}
.con_box .line > li:not(:last-child) { 
    margin-bottom:1.25em; 
    padding-bottom:1.25em; 
	border-bottom:1px solid var(--color-gray04); 
}

.con_box .line > li span{
    display: block;
	position: absolute;
	top: 0;
	left: 25px;
	width: 190px;
}

@media only screen and (max-width: 768px) {
  .con_box .line > li span{
      margin-bottom: 5px;
      position: relative;
	  top: inherit;
      left: inherit;
      width: 100%;
  }
}

.con_box > *:first-child { margin-top:0; }

.con_box + .subttl2{ margin-top:2em; }

.con_box ul { margin-top:2em; }
.con_box li:before {
    content: "■";
    color: var(--main-color);
    font-size: 7px;
    vertical-align: middle;
	top: .35rem;
/*    margin-right: 8px; */
	position: absolute;
	top: 6px;
	left: 0;
}
/*
.con_box li span:after {
    content: "/";
    color: #ddd;
    font-size:15px;
    margin-left: 10px;
     margin-right: 10px;
}
*/
/*
.con_box li div {
    margin-left: 15px;
    margin-top: 5px;
}
*/

#Obtain-recognition{
  margin: 4.35rem auto 0;
}

#Obtain-recognition h3.ttl_h3_02{
  margin-bottom: 30px;
}

#Obtain-recognition h3 + p{
  margin-bottom: 35px;
}

#Obtain-recognition h4{
  margin: 20px auto;
  padding: 0;
  font-size: 1.3125rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.40;
  color: var(--main-color);
  position: relative;
  text-align: center;
}

@media only screen and (min-width: 766px) {
  #Obtain-recognition h4.ma20{
    margin: 2.28rem auto;
  }
}

#Obtain-recognition .wp-block-column{
    background: var(--color-white);
    border-radius: 10px 0;
	padding-bottom: 35px;
}

#Obtain-recognition .wp-block-column p{
  margin-right: auto;
  margin-left: auto;
  width: 90%;
}

#Obtain-recognition img{
    display: block;
	margin: 0 auto;
	height: auto;
    max-width: 100%;
	width: 100%;
}
#Obtain-recognition .wp-block-image .aligncenter{
	width: 100%;
	border-radius: 10px 0 0 0;
    overflow: hidden;
}

@media only screen and (max-width: 768px) {
.sec_box { padding:0 20px 20px;}
.con_box { padding:1.0em; width: 100%;}
.con_box ul { margin-top:2em;font-size: 0.875rem;line-height: 1.4; }
.con_box li:before { margin-right: 6px;}
.con_box li span:after {
    margin-left: 6px;
    margin-right: 6px;
}
.con_box li div {
    margin-left: 0px;
}
}

/* 会社案内 -------------------------------------------------------*/

.about .logo img{
  display: block;
  margin: 0 auto 50px;
  max-width: 300px;
  width: 90%;
}
/*
.about #sec01 .inner .txt {
  width: 60%;
  margin-left:auto !important;
  position: relative;
  padding-top: 20px;
}

.about #sec01 .inner .txt:before {
  content: "";
  width: 844px;
  height:500px;
  background: url(../../images/company/bg-message.jpg);
  position: absolute;
  left: calc(100% - 1540px);
  top: 0;
  border-radius:0 10px 10px 0;
}


.about #sec01 .inner .txt .boxBaseSign {
  bottom: 70px;
  right: 0;
  text-align: right;
  letter-spacing: 0.1em;
  font-family:var(--headline-font-family);
  line-height:1.6;
}

.about #sec01 .inner .txt .boxBaseSign strong {
  font-size: 1.5rem;
}
*/
.about .boxVision{
  justify-content: space-between;
}

h3.ttl_h3_02,
.about .boxVision h3{
  background: var(--main-color);
  border-radius: 10px 0;
  color: var(--color-white);
  font-size: 1.563rem;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1;
  margin-bottom: 50px;
  padding: 15px 45px;
  position: relative;
}

h3.ttl_h3_02::before,
.about .boxVision h3::before{
  background: url('../../images/common/h3_point.svg') no-repeat center / contain;
  content: '';
  display: block;
  height: 20px;
  top: 50%;
  left: 15px;
  transform: translateY(-45%);
  position: absolute;
  width: 20px;
}


.about .text_strong strong{
  display: inline-block;
  font-size: 1.75rem;
  font-weight: 600 !important;
  margin-bottom: 40px;
  padding: 0 1rem;
  position: relative;
}

.about .text_strong strong span.text_br{
  padding-left: 1.5rem;
}
@media only screen and (max-width: 767px) {
.about .text_strong strong span.text_br{
  padding-left: 1.15rem;
}
}

.about .text_strong br.sp{
  display: none;
}
.about .text_strong strong::after,
.about .text_strong strong::before{
  content: '';
  color: var(--accent-color02);
  display: inline-block;
  vertical-align: top;
}

.about .text_strong strong::after{
  content: '”';
  margin-left: .5rem;
}
.about .text_strong strong::before{
  content: '“';
  margin-right: .5rem;
}

.about .boxGroup{
  background: var(--color-gray01);
  padding: 80px 0;
}

@media only screen and (max-width: 767px) {

.about .boxGroup{
  padding: 5rem 0;
}

}

.about .boxGroup .inner{ 
  justify-content: space-between;
  max-width: 1050px;
}

.about .boxGroup img{
  display: block;
  margin: 0 auto 10px;
  max-width: 210px;
  width: 90%;
}

.about .boxGroup h3{
  font-size: 1.25rem;
  font-weight: 600;
  text-align: center;
  letter-spacing: 1px;
}

.about .boxGroup h3::after{
  background: var(--color-gray02);
  content:'';
  display: block;
  height: 4px;
  margin: 30px auto 20px;
  width: 77px;
}

.btn_link a{
  background: url('../../images/common/icon_link.svg') no-repeat 92% center / 18px auto;
  background-color: var(--color-white);
  border-radius: 10px 0;
  color: var(--main-color);
  display: block;
  font-weight: 500;
  line-height: 1;
  margin: 10px auto 0;
  padding: 15px 30px;
  text-decoration: none !important;
  max-width: 280px;
  width: 100%;
}

@media only screen and (min-width: 766px) {
.btn_link.mt50{
  margin-top: 50px;
}
}

.btn_std.postion_right{
  display: block;
  margin-left: auto;
  max-width: 270px;
  line-height: 1;
  padding-bottom: .15rem;
}
.btn_std.postion_right span{
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: flex-start;
  padding-right: 0;
}
.sub_list li{
  margin-bottom: 10px;
  padding-left: 1rem;
  position: relative;
}

.sub_list li:last-child{
  margin-bottom: 0;
}
.sub_list li::before{
  background: var(--point-color);
  border-radius: 1rem;
  content: '';
  display: block;
  height: 5px;
  position: absolute;
  left: 0;
  top: .65rem;
  opacity: .5;
  width: 5px;
}

.sub_list li span.name{
  font-weight: 600;
}

main .wrap p a:not(.btn_std),
main .wrap li a,
main .wrap td a{
  color: var(--main-color);
  text-decoration: underline;
}

/* 職種キャリア -------------------------------------------------------*/

.occupations,
.works{
	margin-top: 64px;
}

main .works section{
	margin-bottom:0 !important;
}

main .occupations section#sec01{
	margin-bottom:-65px !important;
}

.works .ttl_Num01 {
  margin-top: 5px !important;
  margin-bottom:56px !important;
  position: relative;
}

.works #sec01{
  background-size:auto 100%;
  background-position: right top;
  background-repeat: no-repeat;
  padding:0;
}
.works #sec01:first-child {  padding-top:0;  background-position: right top 0px; }
/*.works #sec02 {
  background: url(../../images/works/bg-sec02.jpg) no-repeat right bottom;
  background-size: auto 95%;
  padding: 0 0 80px 0;
}
.works #sec03 {
  background: url(../../images/works/bg-sec03.jpg) no-repeat right bottom;
  background-size: auto 95%;
  padding: 0 0 80px 0;
}*/

/*.works .ttl_works,
.occupations .ttl_works{
	background: url(../../images/works/bg-ttl02.png) no-repeat center top;
	text-align: left;
	margin-bottom: 50px;
}

.works .ttl_works h2,
.occupations .ttl_works h2{
    max-width: 1080px;
    margin: auto;
    padding: 0;
    line-height: normal;
    font-size: 1.75rem;
    font-weight: 500;
    text-align: left;
    color: #fff;
    letter-spacing: 0.1em;
}

.works .ttl_works .number,
.occupations .ttl_works .number{
    margin: 0 57px 0 10px;
    font-family: "Poppins", sans-serif;
    font-style: italic;
    color: #000;
    letter-spacing: -0.02em;
    vertical-align: middle;
    position: relative;
    font-size: 3.53rem;
    line-height: 1.1;
    font-weight: 500;
    bottom: -6px;
    display: inline-block;
    min-width: 67px;
}

.works .ttl_works .number::before {
	font-family: "Poppins", sans-serif;
    content: "Point";
    font-size: 1.269rem;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-37%,-67%);
    text-shadow: none;
    color: #adc75e;
    letter-spacing: 0;
    font-weight: 500;
    font-style: italic;
}

.occupations .ttl_works .number::before {
    font-family: "Poppins", sans-serif;
    content: "Point";
    font-size: 1.269rem;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-37%,-67%);
    text-shadow: none;
    color: #adc75e;
    letter-spacing: 0;
    font-weight: 500;
    font-style: italic;
}*/

.works .works_inner  {
padding: 1.5rem 1.5rem 6rem ;
}

.works .txt .ttl,
.occupations .txt .ttl {
  color: var(--point-color);
  font-weight: bold;
  font-size: 1.375rem;
}

.occupations .txt .ttl {
  background: url(../../images/works/icn_point.png) no-repeat left center;
  padding-left:25px;
}

.works .txt p {
/*text-shadow: -2px -2px 5px #fff,2px 2px 5px #fff;*/
}

.works #sec01 .btn_area{
  display:block;
}

.occupations #sec01{
  background-size:auto 60%;
  background-position: right -100px bottom;
  background-repeat: no-repeat;
}

.occupations #sec02 {
  padding-top:0;
}
/*.occupations .btn_area {
   text-align:center;
  margin:30px auto 55px;
  padding: 0 25px;
  max-width:1080px;
}*/
	
.popup_list {
  margin:60px auto 0;  
}
.popup_list li {
  display: inline-block;
  width: calc(100% / 3 - 1em);
  position: relative;
}
/*.popup_list li:after {
  content: url(../../images/works/icn-loupe.png);
  position: absolute;
  right: 5px;
  bottom: 5px;
  pointer-events: none;
}*/
.popup_list li:nth-of-type(2) {  margin: 0 1em; }

@media only screen and (max-width: 767px) {
.popup_list li {
  display: block;
  width: 100% ;
  position: relative;
}
.popup_list li:nth-of-type(2) { margin: 1em auto; }
}

.boxOccupationsS01Wrap {
  padding-top: 1.5rem;
}

.boxOccupationsS02Wrap,
.boxOccupationsS03Wrap,
.boxInterviewS02Wrap {
	/*padding: 1.5rem 0rem 1.5rem 1.5rem;*/
	padding: 0rem 0rem 0 1.5rem;
	
}
.boxOccupationsS02Wrap .boxOccupationsS02:nth-child(n + 2) {
	margin-top: 3rem;
}

.boxOccupationsS01 {
	padding-bottom: 7.5rem;
}

.boxFlexLR {
	display: flex;
	flex-wrap: wrap;
    justify-content:space-between;
}

.boxFlexLR .boxFlexL {
	width: 48%;
}
.boxFlexLR .boxFlexR {
	width: 48%;
}

@media all and (max-width: 767px){
.boxOccupationsS01 {
	padding-bottom: 5.5rem;
}

.boxFlexLR {
    display: block;
  }

.boxFlexLR .boxFlexL,
.boxFlexLR .boxFlexR {
	width: 100%!important; 
	padding-bottom:1.5rem!important;
}
}

.boxOccupationsS01 .flexBoxL {
	width: 57%;
}
.boxOccupationsS01 .boxFlexR {
	width: 38%;
}
.boxOccupationsS01 .boxFlexR img.jobImg {
	max-width:100%;
	min-width: 330px;
	border:0px solid #fff; 
	box-shadow: 4px 4px 13px 0px rgba(0, 0, 0, 0.35);
}
.boxOccupationsS01 .txt p {
	line-height: 1.8;
}
.boxOccupationsS01 .ttl {
	color: var(--main-color);
	font-size: 1.75rem;
	margin-bottom: 1em;
	line-height: 1.6;
}
@media all and (max-width: 767px){
.boxOccupationsS01 .ttl { font-size: 1.55rem;}
}


.bl_schedule {
  display: flex;
  justify-content:space-between;
  align-items:flex-start;
}
@media all and (max-width: 767px){
  .bl_schedule {  display: block; }
}

.bl_schedule_item {
	width: 45%;
	margin: 0 auto 2.5em !important;
}
@media all and (max-width:767px){
  .bl_schedule_item { width: 100%; }
  .bl_schedule_item:nth-child(2) {  margin-top: 1.5em; }
}

.bl_schedule_ttl{
  padding-left: 26px;
  position: relative;
  font-size: 1.5625rem;
  font-weight: 600;
  margin-bottom: 1.5em;
  color:var(--point-color);
}
@media all and (max-width: 767px){
  .bl_schedule_ttl{  font-size: 1rem; }
}

.bl_schedule_ttl::before {
  content:"";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color:var(--color-white);
  border-radius:50%;
}

.bl_schedule_ttl::after {
  content:"";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 80%;
  height: 1px;
  background-color: var(--point-color);
}


.bl_schedule_dl {
	display: flex;
	padding-bottom: 2.5rem;
	position: relative;
	align-items: center;
}
.bl_schedule_dl:before {
	content: "";
	width: 2px;
	height: 100%;
	position: absolute;
	left: 40px;
	top: 5px;
	background-color: var(--main-color);
	z-index: 2;
}
.bl_schedule_dl:last-child:before {
	content: none;
}
.bl_schedule_dl:last-child {
	padding-bottom: 0rem;
}

.bl_schedule_dl:not(:last-child)::after {
  content:"";
  position: absolute;
  bottom: -60px;
  left: 40px;
  width: 2px;
  height: 60px;
  background-color: var(--main-color);
}
@media all and (max-width: 767px){
  .bl_schedule_dl {  font-size: 0.78rem;  }
  .bl_schedule_dl:before {
	position: absolute;
	left: 25px;
	top: 0;
}
.bl_schedule_dl:not(:last-child)::after {
  position: absolute;
  bottom: -40px;
  left: 25px;
}
}


.bl_schedule_dl .time {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 80px;
  height: 80px;
  margin-right: 1.5em;
  border-radius: 50%;
  background-color:var(--main-color);
  color: #fff;
  font-weight: 400;
  z-index: 3;
}
@media all and (max-width: 767px){
  .bl_schedule_dl .time {
    width: 14vw;
    height: 14vw;
  }
}
.bl_schedule_dl .line {
  width: 80px;
  height: 60px;
  margin-right: 2em;  
  position: relative;
}
@media all and (max-width: 767px){
  .bl_schedule_dl .line {
    width: 14vw;
  }
}
.bl_schedule_dl .line::after {
  content:"";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 60px;
  background-color: #1d90cf;
}
@media all and (max-width:767px){
  .bl_schedule_dl .line::after {
    height: 16vw;
  }
}
.bl_schedule_dl dd {
  font-size: 1.0rem;
  line-height: 1.5;
}

.bl_schedule_dl dd span {
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.4;
  display: block;
  margin-bottom:10px;
}
.bl_schedule_dl dd span.none {
	margin-bottom: 0;
}
.bl_schedule_dl dd .indent {
  display: block;
  padding-left: 0.5em;
  padding-bottom: 0.5em;
  font-weight: normal;
}

.dl_listCom {
	line-height: 1.6;
	padding: 1.2em 1.0em;
	display: flex;
}

.dl_listCom:nth-of-type(2n) {
	background-color:var(--table-bg);
	border-radius: 10px;
}
.dl_listCom dt {
	width: 11em;
	padding-left: 0.8em;
	font-weight: 600;
	position: relative;
}
.dl_listCom dt:before {
	content: "";
	display: block;
	width: 5px;
	height: 5px;
	background-color: var(--accent-color02);
	position: absolute;
	top: 0.7em;
	left: 0em;
	/*transform: translateY(-50%);*/
}
.dl_listCom dd {
	width: calc(100% - 11em);
	font-size: 0.9375rem;
}


@media all and (max-width: 767px){
.dl_listCom { display: block;}

.dl_listCom dt { width: 100%; }

.dl_listCom dd { width:100%;padding-right: 18px;}
}

.ul_license li {
  background: url(../../images/common/icn-dot_blue.jpg) no-repeat 1em center;
  padding: 1.0em 2.0em ;
}
/* 見学・お問い合わせ -------------------------------------------------------*/

.contact #sec01 .l_img img{
 border-radius: 10px 0 0 10px;
}

.contact #sec01 .r_img img{
 border-radius: 0 10px 10px 0;
}

@media all and (max-width: 640px){
  .contact #sec01 .l_img img{
    border-radius: 10px 10px 0 0;
  }

  .contact #sec01 .r_img img{
   border-radius: 0 0 10px 10px;
  }
}


.boxEntryBg01 {
  display: flex;
  justify-content: center;
  margin-bottom: 72px;
}
@media all and (max-width: 640px){
  .boxEntryBg01 {
    display: block;
  }
}

.contact .ttl_h2 span {
    /*font-family: "Poppins", sans-serif;*/
    display: block;
    position: relative;
    color: rgba(153, 165, 181, 1);
    font-size: 0.875rem;
    letter-spacing: 0.05em;
}
.contact .ttl_h2 span:before {
    content: "";
    display: block;
    background-color: #adca49;
    width: 6px;
    height: 6px;
    margin: 15px auto 15px auto;
}


.contact .inner .box{
  margin-top: 50px;
  margin-bottom: 30px;
  display:flex;
  justify-content:space-between;
}
.contact .inner .box .img {
  width: 38%;
}
.contact .inner .box .txt {
  width: 58%;
  margin-left:auto;
  position: relative;
}
.contact .inner .box .txt .ttl {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: bold;
  color: #0b5d62;
  margin: 15px 0 20px;
}

.contact .inner .box .txt dl {
  clear: both;
  overflow: hidden;
  margin-bottom: 15px;
}
.contact .inner .box .txt dt {
  background: url(../../images/common/icn-dot_blue.jpg) no-repeat 25px 4px;
  padding-left: 40px;
  width: 16%;
  min-width: 120px;
  float: left;
}
.contact .inner .box .txt dd {
  width: 84%;
  float: left;
}

.contact #sec01 h3 {
    text-align:center;
    line-height: 1.6;
}

.contact #sec01 .ttl_works {
  background: url(../../images/works/bg-ttl.png) no-repeat center top;
  padding: 18px 0;
  margin-bottom: 50px;
}
.contact #sec01 .ttl_works span {
  display: block;
  margin: auto;
  max-width: 1080px;
  font-size: 1.75rem ;
}
.contact #sec01 .ttl_works img {
  margin-right: 25px;
  display: inline-block;
  vertical-align: middle;
}

.contact #sec03 .recBox {
  background-color: #fcfbe6;
  padding:10px 3% 15px;
  text-align:center;
}
.contact #sec03 .recBox .ttl {
  display:inline-block;
  font-size:1.125rem ;
  font-weight: bold;
  color: #0193cf;
  padding-bottom:3px;
  border-bottom:1px solid #0193cf;
}
.contact #sec03 .recBox li {
  text-align:left;
  padding: 0 0 0 10px;
  margin: 0 0 12px 0;
  line-height:1.4;
  /*width: 50%;*/
}
.contact #sec03 .recBox li:before {
    content: "■";
    color: #0193cf;
    font-size: 7px;
    vertical-align: middle;
    margin-right: 3px;
}

#entryForm{
    margin: 64px auto 80px;
}


.boxEntry02{
  margin: 55px auto;
} 

/*title*/
.boxEntry02T {
  position: relative;
  padding:0;
  margin-bottom: 2.5em;
}

.boxEntry02T h3.ttl {
  /*height: 58px;*/
  margin-left: 85px;
  padding: 0.81em 3.8em 0.81em;
  font-size: 1.375rem;
  color:#fff;
  font-weight: 500;
  background-color: #22333a;
  letter-spacing: 0.1em;
}
@media all and (max-width: 640px){
  .boxEntry02T h3.ttl {
    margin-left: 13.25vw;
    padding: 0.8em 0.5em 0.8em 2.4em;
    font-size: 1.125rem;
  }
}

.boxEntry02T .ttl_label {
  position: absolute;
  top: 0;
  left: 0;
  width: 150px;
  height: 57.63px;
  background: url(./../../images/common/ttl-bg01.png) no-repeat left top / auto;
}
@media all and (max-width: 640px){
.boxEntry02 .ttl_label {
    top: -0.43em;
    width: 20.6vw;
    height: 8.9vw;
  }
}

.boxEntry02T .ttl_label span {
  display: block;
  color: #b1ca5e;
  text-align:center;
  font-size: 1.125rem;
  font-weight: bold;
  font-family: "Poppins", sans-serif;
  padding-top: 20px;
  padding-left:10px;
  letter-spacing: 0.03em;
}
@media all and (max-width: 640px){
.boxEntry02T .ttl_label span {
    padding-top: 0.8em;
    padding-left: 0.5em;
    font-size: 0.75rem;
  }
}

.boxEntry02F ul.mainlist{
  overflow: hidden;
  margin: 0 auto 64px;
  display: flex;
  justify-content:center;
}

.boxEntry02F ul.mainlist li{
  position: relative;
  width: 32%;
  /*min-height: 300px;*/
  margin-right: 3%;
  text-align:center;
  background-color:var(--color-white);
  border-radius:10px;
  padding-bottom:1.2em;
  }
 
.boxEntry02F ul.mainlist li:last-child{
  margin-right: 0;
}

.boxEntry02F ul.mainlist li:after {
  content: url(../../images/common/arrow_line.svg);
  position: absolute;
  right: -30px;
  top: calc(50% - 10px);
}
.boxEntry02F ul.mainlist li:last-child:after {
  display: none;
}

.boxEntry02F ul.mainlist li h4{
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: -0.04em !important;
  text-align:left;
  color:var(--color-white);
  width: 100%;
  padding:15px 20px;
  margin-bottom:20px;
  background-color: var(--main-color);
  border-radius:10px 10px 0 0;
}

.boxEntry02F ul.mainlist li h4 strong{
  display: inline-block;
  font-size: 1.0rem;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  margin-bottom: 5px;
  vertical-align: bottom;
  line-height: 1.0;
  color:var(--color-white);
  font-family:var(--headline-font-family);
}

.boxEntry02F ul.mainlist li h5 {
    text-align: center;
    font-size: 1.125rem;
	line-height:1.25;
    letter-spacing: -0.04em !important;
	font-weight: 600;
    margin-bottom:0.8rem;
    padding-bottom: 1.0rem;
	position: relative;
}

.boxEntry02F ul.mainlist li h5::after {
  content:"";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 1px;
  background-color:var(--point-color);
}

.boxEntry02F ul.mainlist li ul.sublist {
  display: block;
  width:80%;
  margin:0 auto;
}

.boxEntry02F ul.mainlist li ul.sublist li{
  display: block;
  width:100%;
  margin:0;
  padding:0.5em 0 0.5em 0.8em;
  text-align:left;
  letter-spacing: -0.04em !important;
  line-height:1;
  position: relative;
}

.boxEntry02F ul.mainlist li ul.sublist li:before{
    content: "■";
	position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    color: var(--accent-color02);
    font-size: 7px;
    vertical-align:middle;
}

.boxEntry02F ul.mainlist li ul.sublist li::after {
  display: none;
}

.boxEntry02FOne{
  position: relative;
  width: 32%;
  min-height: 300px;
  margin-right: 3%;
  border: 1px #ccc solid;
  text-align:center;
}

.boxEntry02FOne:last-child{
  margin-right: 0;
}

.boxEntry02FOne:after {
  content: url(../../images/recruit/icn-arrow.jpg);
  position: absolute;
  right: -22px;
  top: calc(50% - 20px);
}
.boxEntry02FOne:last-child:after {
  display: none;
}

.boxEntry02FOne h4.ttl{
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.2;
  text-align:left;
  color:#1fa449;
  width: 100%;
  padding:15px 20px;
  margin-bottom:20px;
  background-color: #eee;
  background: url('./../../images/contact/entry-ttl-bg01.png') no-repeat left top / cover;
  border-bottom:1px solid #eee;
}

.boxEntry02FOne .ttl .txtEn{
  font-family: "Poppins", sans-serif;
  display: inline-block;
  font-size: 0.75rem;
  margin-bottom: 5px;
  vertical-align: bottom;
  line-height: 1.0;
  color: #3d3d3d;
}
.boxEntry02FOne .ttl .txtNum{
  font-size: 1.2rem;
}

.boxEntry02FOne .ttl2{
  width: 100%;
  font-weight: bold;
  line-height: 1.4;
}

.boxEntry02FOne .ttl2:after {
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  background-color: #b1ca5e;
  margin: 15px auto 25px auto;
}

.boxEntry02FOne ul{
  width: 87%;
  margin: 15px auto 0;
  text-align:left;
}
.boxEntry02FOne li{ margin-bottom: 8px; }
.boxEntry02FOne li:before{
    content: "■";
    color: #297475;
    font-size: 7px;
    vertical-align: middle;
    margin-right: 10px;
}

.boxEntry02FOne .boxR{
  position: absolute;
  right: 20px;
  bottom: 10px;
  font-size: 0.875rem;
}
.boxEntry02FOne .icnEntryArrow01{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: -52px;
}

.boxEntry02 .btn_area{ text-align:center;}

.boxEntry02 .btn_area .btn_white04 {
    display: inline-block;
    width: 320px;
    background: url(../../images/common/icn-arrow_white.svg) no-repeat calc(100% - 14px) center;
	background-size: 29px;
    background-color: #22333a;
    color: #FFF;
    font-weight: bold;
    font-size: 1.125rem;
    line-height: normal;
    text-align: left;
    position: relative;
}
.contact .btn_area .btn_white04 span {
    display: block;
    padding: 15px 18px 15px 18px;
    width: 100%;
    height: calc(100% - 6px);
    margin: auto;
    position: relative;
    top: 0;
}

/*フォーム-------------------------------------------------------------------*/
#form_area .lead {
	text-align: center;
}
#form_area dl {
	clear: both;
	display: table;
	width: 100%;
	border-bottom: 1px solid #b2b2b2;
}
#form_area dl:first-child {
	border-top: 1px solid #b2b2b2;
}
#form_area dt {
	background: url(../../images/contact/icn.png) no-repeat 45px center;	
	width: 25%;
	display: table-cell;
	vertical-align: middle;
	font-weight: 600;
}
#form_area dd {
	display: table-cell;
	width: 75%;
	padding: 15px 0;
	position: relative;
}
#form_area .must {
	font-size: 11px;
	color: #de0000;
	border: 1px solid #de0000;
  padding: 3px 5px;
  line-height: 1;
  vertical-align: 2px;
  display: inline-block;
  margin-right: 10px;
}
#form_area dl .free {
	font-size: 11px;
	color: #787777;
	border: 1px solid #787777;
	padding: 3px 5px;
	line-height: 1;
	vertical-align: 2px;
	display: inline-block;
	margin-right: 10px;
}
#form_area .add_btn {
	display: inline-block;
}
#form_area .add_btn input {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    width: 170px;
    border: none;
    background-image: url(../../images/common/icn-arrowWhite.png), url(../../images/common/bg-btn_brown.jpg);
    background-repeat: no-repeat, repeat;
    background-position: 145px center, left center;
    background-size: 8px, auto;
    padding: 12px 0 12px 15px;
    color: #fff;
    display: inline-block;
    margin-left: 10px;
    text-align: left;
    font-size: 1rem;
    cursor: pointer;
    letter-spacing: 2px;
}
#form_area input[type=text], 
#form_area input[type=email] {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	padding: 11px;
	border: 1px solid #a0a0a0;
	width: 350px;
	font-size: 1rem;
     /*以下フォームの角丸設定*/
	-webkit-appearance: none;
    border-radius: 5px;
	-moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}
#form_area #zip {
	width: 170px;
}
#form_area select {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	padding: 12px;
	margin: 15px 0;
	width: 190px;
	font-size: 1rem;
}
#form_area #address {
	width: 80%;
}
#form_area textarea {
	height: 180px;
	width: 80%;
	font-size: 1rem;
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	padding: 11px;
	 /*以下フォームの角丸設定*/
	 border: 1px solid #a0a0a0;
    outline:0 !important;
	-webkit-appearance: none;
     border-radius: 5px;
	-moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}
#form_area .mail_area input:first-child {
	margin-bottom: 15px;
}
#form_area .mail_area dd {
	position: relative;
}
#form_area .mail_area .sub {
	position: absolute;
	top: 4em;
	left: calc( 360px + -1% );
}

#form_area dd.flex-checkbox{
    display: flex;
    flex-wrap: wrap;
	margin-left: 0;
    width: 100%;
}

.mwform-checkbox-field.horizontal-item{
    display: inline-block;
    width: calc( 100% / 3);
    padding: 0 .25rem;
    margin: 0 !important;
	line-height: 1.5;
}

@media only screen and (max-width: 767px) {
  .mwform-checkbox-field.horizontal-item{
    width: 100%;
  }
}

/* チェックボックス01 */
input[type="radio"] ,
input[type="checkbox"] {
    display: none;
}
.mwform-radio-field.horizontal-item label span,
.mwform-checkbox-field.horizontal-item label span {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
}

.mwform-radio-field.horizontal-item label span::before ,
.mwform-checkbox-field.horizontal-item label span::before {
  background: var(--color-white);
  border: 1px solid #ccc;
  content: '';
  display: block;
  height: 16px;
  left: 5px;
  position: absolute;
  top: 10px;
  width: 16px;
}
.mwform-radio-field.horizontal-item label span::after,
.mwform-checkbox-field.horizontal-item label span::after {
  border-right: 2px solid var(--main-color);
  border-bottom: 2px solid var(--main-color);
  content: '';
  display: block;
  height: 12px;
  left: 9px;
  opacity: 0;
  position: absolute;
  top: 10px;
  transform: rotate(45deg);
  width: 8px;
  margin-top: 0;
}

.mwform-radio-field.horizontal-item label span::before,
.mwform-radio-field.horizontal-item label span::after{
  border-radius: 10px;
}

.mwform-radio-field.horizontal-item label span::before{
  top: 7px;
}
.mwform-radio-field.horizontal-item label span::after{
  background:var(--main-color);
  border: 0;
  height: 10px;
  width: 10px;
  left: 8px;
}
input[type="radio"]:checked + span::after,
input[type="checkbox"]:checked + span::after {
    opacity: 1;
}

.privacy .ttl {
	font-size: 1.25rem !important;
	font-weight: bold !important;
	text-align: center !important;
	padding: 20px 0 !important;
	margin-bottom: 30px !important;
	border-bottom: 1px solid #b2b2b2;
  background: none !important;
  color: #000 !important;
}
.privacy .ttl:after {
  display: none !important;
}
.privacy .scrollContents {
	padding: 30px 10%;
	height: 280px;
	overflow-y: scroll;
}
.privacy .scrollContents p span {
	display: block;
	font-weight: bold;
}
.privacy .scrollContents p {
	line-height: 1.6;
}
.privacy_check {
	background-color: var(--color-gray02);
	border-radius:10px;
	text-align: center;
	padding: 10px 0;
	width: 100%;
	margin: 40px auto;
	line-height:2.0;
}
.open-link{
  text-decoration: underline;
}
.check_area {
  padding: 40px 0px !important;
}
@media all and (max-width: 500px){
  .privacy_check { font-size: 1.0rem; }
}

#form_area .confirm button {
	min-width: 300px;
	width: 75%;
	margin: 0 auto;
	font-size: 1.125rem;
	font-family:var(--base-font-family) !important;
	letter-spacing:0.06em;
	line-height: 1;
	padding: 16px 30px 17px;
	display: block;
	font-weight: 600;
	color: var(--color-white);	
	text-align: left;
	border:none;
	border-radius:10px 0;
	background: url(../../images/common/icn-arrow.svg?ver=1) no-repeat calc(100% - 18px) center var(--point-color);
	background-size: 20px;
}
#form_area .btn_area button {
	font-family:var(--base-font-family) !important;
	cursor: pointer;
	margin: 0 1em !important;
	diplay:inline-block;
}
#form_area .back button {
	text-align: center;
	margin: 1em auto!important;
	display: block;
	padding: 10px 30px;
	font-weight: bold;
	font-family:var(--base-font-family) !important;
	/*text-decoration: underline;*/
	font-size: 1.0rem;
	letter-spacing:0.06em;
	background: var(--color-white);
	border-radius: 10px 0;
	border:none;
	color:var(--point-color);
}
#form_area .submit button {
    min-width: 300px;
	width: 75%;
	margin: 0 auto;
	font-size: 1.125rem;
	font-family:var(--base-font-family) !important;
	letter-spacing:0.06em;
	line-height: 1;
	padding: 16px 30px 17px;
	display: block;
	font-weight: 600;
	color: var(--color-white);	
	text-align: left;
	border:none;
	border-radius:10px 0;
	background: url(../../images/common/icn-arrow.svg) no-repeat calc(100% - 18px) center var(--point-color);
	background-size: 29px;
}
#form_area .btn_area {
    flex-wrap: wrap;
	text-align: center;
	margin: 40px 0 ;
}
#form_area .btn_area button:hover {
	opacity: 0.7;
	transition: all 0.3s;
}

#form_area .btn_area .back{
    display: block;
	width: 100%;
}

.confirm #sec01,
.complete #sec01{
	margin-top:64px;
}

.complete #sec01 p{
	line-height: 2.0;
	text-align: center;
}

.complete #sec01 p.tel_btn {
	margin: 20px auto;
    font-size: 1.125rem;
    font-weight: bold;
	position: relative;
}

.thanks {
	text-align: center;
	line-height: 2.0;
	position: relative;
	padding-bottom: 80px;
	z-index: -1;
}
.thanks h2 {
	text-align: center;
	color: #071c1f;
    font-size: 1.85rem;
    letter-spacing: 0.1em;
	margin-bottom: 1.5em;
	padding-top: 50px;
}/**/
.thanks p {
    font-size: 1rem;
}
.thanks .tel_btn {
	margin: 20px auto;
    font-size: 1.125rem;
    font-weight: bold;
	position: relative;
}

.mw_wp_form .error {
	margin: 5px 0;
}
.confirm #form_area dt,
.confirm #form_area dd,
.confirm_event #form_area dt,
.confirm_event #form_area dd {
	padding: 25px 0;
}
.confirm #form_area .must,.confirm #form_area .free,
.confirm_event #form_area .must,.confirm_event #form_area .free {
	display: none;
}
.confirm #form_area dt,
.confirm_event #form_area dt {
	padding-left: 35px;
	background-position: left center;
}

@media only screen and (max-width: 767px) {
.confirm #form_area dt,
.confirm #form_area dd,
.confirm_event #form_area dt,
.confirm_event #form_area dd {
	padding: 10px 15px 5px;
}
.confirm #form_area dt,
.confirm_event #form_area dt {
	padding-left: 15px;
	background-position: left center;
}
#form_area .submit button { margin: 0 0 15px 0; }
}

.privacypolicy h3 { margin-bottom: 20px !important; }
.privacypolicy p {
    line-height: 1.65;
    margin-bottom: 1.5em;
	letter-spacing:-0.02em;
}
.privacypolicy p:last-child {
    margin-bottom: 0;
}
.privacy_name { line-height:1.6em; }
.privacy_name strong{ font-size:1.125rem; }

.boxImportantWrap { 
    margin:0 auto;
	text-align:center;
	display:block;
	}
.boxImportant { 
    margin:0 auto;
	padding:2.0em;
	display:inline-block;
	text-align:left;
	border:1px solid #c00;
	font-weight: 600;
    font-size: 1.125rem;
	line-height:1.6rem;
	color:#c00;
	}
	


/*##### Voice #####*/
.boxVoiceTopWrap {
  padding-top: 0.6em;
  padding-bottom: 4.9em;
}

.boxVoice01Wrap {
  padding-top: 12.3em;
  padding-bottom: 1em;
}
#voice-content{
    padding-top: 60px;
}
@media all and (max-width: 750px){
  .boxVoice01Wrap {
    padding-top: 9em;
    padding-bottom: 2em;
  }
}

.boxVoice01 .boxListOne {
  position: relative;
  margin-bottom: 10.8em;
}
.boxVoice01 .boxListOne:last-child {
  margin-bottom: 0;
}
@media all and (max-width: 750px){
  .boxVoice01 .boxListOne {
    margin-bottom: 8.8em;
  }
}

.boxVoice01 .boxListOne .ttl01 {
  position: absolute;
  top: -5.3em;
  left: 0;
  right: 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  width: 430px;
  min-height: 170px;
  margin: auto;
  z-index: 10;
}
@media all and (max-width: 1660px){
  .boxVoice01 .boxListOne .ttl01 {
    top: -8.3em;
  }
}
@media all and (max-width: 1440px){
  .boxVoice01 .boxListOne .ttl01 {
    top: -9.3em;
  }
}
@media all and (max-width: 750px){
  .boxVoice01 .boxListOne .ttl01 {
    top: -20vw;
    width: 75vw;
    min-height: 25vw;
  }
}

.boxVoice01 .boxListOne h2.ttl01 .ttlEn {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 40%;
  padding-top: 0.15em;
  background: var(--main-color);
  font-family: var(--base-font-en2);
  font-style: italic;
  color: var(--color-white);
}

.boxVoice01 .boxListOne h2.ttl01 .ttlEn .txt01 {
  margin-bottom: 0.3em;
  padding: 0 0.16em 0 0 !important;
  line-height: 1.1;
  letter-spacing: 0.05em;
  font-size: 1.1rem;
  font-weight: 600;
}
@media all and (max-width: 750px){
  .boxVoice01 .boxListOne h2.ttl01 .ttlEn .txt01 {
    font-size: 1.0rem;
  }
}

.boxVoice01 .boxListOne h2.ttl01 .ttlEn .txt02 {
  color: var(--color-white);
  margin-right: 0.22em;
  line-height: 1.0;
  letter-spacing: 0.05em;
  font-size: 3.5rem;
  font-weight: 700;
  padding-top: 0  !important;
}
@media all and (max-width: 750px){
  .boxVoice01 .boxListOne h2.ttl01 .ttlEn .txt02 {
    font-size: 2.2rem;
  }
}

.boxVoice01 .boxListOne h2.ttl01 .ttlJa {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  width: calc(100% - 40%);
  padding: 0.55em 0.35em 0.3em 0.9em;
  background-color: var(--color-gray01);
  line-height: 1.33;
  letter-spacing: 0.05em;
  font-size: 1.5rem;
  font-weight: 700;
  color: #2a2a2a;
  text-align: left;
}
@media all and (max-width: 750px){
  .boxVoice01 .boxListOne h2.ttl01 .ttlJa {
    font-size: 1.15rem;
  }
}

.boxListOne .boxImg{
  position: relative;
  z-index: 1;
}

	
/*-その他 設定 --------------*/


.page .wrap .inner h2:not(.ttl_h2){
  padding-bottom: 0;
}

.page .wrap .inner h2:not(.ttl_h2)::after{
  display: none;
}

.page .wrap .inner p{
  line-height: 1.5;
}
