@charset "utf-8";

/* ================================= 
  recruit ページ
================================= */ 

@media (min-width: 768px) {
  #recruit .headerPc .visual,
  #recruit .g-page--top .headerPc {
    height: 100vh;
  }
 .anc-list--col2 li {
   width: 50%;
 } 
}
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px)  { 
  #interview_eng01 .kvModule img,
  .profile,
  .profile .profile-wrap,
  #recruit .headerPc .visual,
  #recruit .g-page--top .headerPc {
      height: 1000px!important;
  }
  .profile {
    background-position: center bottom!important;
  }
  .headerPc .visual a:after {
   background-size: auto!important;
  }
  .headerPc .visual a img {
    height: auto!important;
    width: 400px;
  }
}

/* visual
---------------------------------------------------------- */

@media all and (min-width: 768px) {
  .kvModule {
    background-image: url(/recruit/img/bg-kv.jpg);  
  }
  .g-page--top .headerPc {
    background-image: url(/recruit/img/main-bg.jpg);
    height: 1000px; 
  }
  .headerPc .visual {
    height: 1000px; 
  }
  .headerPc .visual {
    position: relative;
    max-width: 2000px;
    margin: 0 auto;
  }
  .headerPc .visual a {
    position: relative;
    z-index: 10;
    width: 100%;
    height: 100%;
    display: block;
    display: flex;
    align-items: center;
    text-align: center;
  }
  .headerPc .visual a img {
    margin: 0 auto 30px;
    height: 55vh;
  }
  .headerPc .visual a:after {
    position: absolute;
    left: 0;
    bottom: 0;
    content:" ";
    width: 100%;
    height: 100%;
    background: url(/recruit/img/ico-scroll.png) no-repeat center bottom;
    background-size: 4.5vh auto;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }
  .headerPc .visual a:hover {
    opacity: 0.7;
  }
  .headerPc .visual a:hover:after {
    opacity: 0.7;
    background-position:  center bottom 10px; 
  }
}

/* kv
---------------------------------------------------------- */
@media all and (min-width: 768px) {
   .kv .inner .kv-txt {
    padding-right: 80px;
  }
  .kv .inner .kv-ttl {
    font-weight: normal;
    letter-spacing: 8px;
  }
 /* #csr .kv {
    background: url(/recruit/img/bg-kv-top.jpg) no-repeat center 0;
  }
  .kvModule {
    background-image: url(/csr/img/bg-kv.jpg);  
  }*/
	
/* -- kvModule common --- */
  .kvModule-engineer,
  .kvModule-sales,
  .kvModule-guideline,
  .kvModule-training,
  .kvModule-welfare,
  .kvModule-career{
	height: 450px;
	margin-bottom: 70px;
	background-position: center center;
	background-size: cover;
  }
	
/* --- engineer kv --- */
  .kvModule-engineer {
	background-image: url(/recruit/img/bg-kv-engineer.jpg);
  }
	
/* --- sales kv --- */
  .kvModule-sales {
    background-image: url(/recruit/img/bg-kv-sales.jpg);
  }
/* --- guideline kv --- */
  .kvModule-guideline {
	background-image: url(/recruit/img/bg-kv-guideline.jpg);
  }
	
/* --- training kv --- */
  .kvModule-training {
    background-image: url(/recruit/img/bg-kv-training.jpg);
  }
	
/* --- welfare kv --- */
  .kvModule-welfare {
    background-image: url(/recruit/img/bg-kv-welfare.jpg);
  }
  /* --- career kv --- */
  .kvModule-career {
	background-image: url(/recruit/img/bg-kv-career.jpg);
  }
}

/* main
---------------------------------------------------------- */
.inner {
  max-width: 1400px;
  margin: 0 auto;
}
#main {
  margin-top: 0;
}
.head-box {
  text-align: center;
  padding: 35px 10px;
  font-size: 20px;
  font-weight: bold;
}
.h-ttl {
  text-align: center;
  font-size: 45px;
  line-height: 1.3;
  font-weight: bold;
  padding-bottom: 30px;
}
.h-ttl span {
  display: block;
  font-size: 24px;
  letter-spacing: 3px;
  font-weight: normal;
}
.btn-detail01 {
  color: #fff;
  width: 360px;
  text-decoration: none;
  font-size: 26px;
  border: 2px solid #fff;
  box-sizing: border-box;
  padding: 10px 0;
  display: block;
  text-align: center;
  margin: 0 auto;
}
.btn-detail01--green {
  color: #029463;
  border-color: #029463;
}
.profile .inner {
  max-width: 540px;
  margin: 0 auto;
  color: #fff;
  text-shadow: 2px 2px 10px #000;
}
.profile .profile-txt {
  font-size: 1.3vw;
}

@media all and (min-width: 768px) {
  .btn-detail01:hover {
    background-color: #fff;
    color: #029463;
  }
  a .btn-detail span {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  a:hover .btn-detail span,
  .btn-detail a:hover {
    font-size: 26px;
  }
  .btn-detail01--green:hover {
    background: #029463;
    color: #fff;
  }
  .profile {
    background-image: url(/recruit/img/bg-profile.png);
    position: relative;  
    background-position: center bottom -80px;
    background-repeat: no-repeat;
    background-size: cover;
    height: calc(100vh - 234px);
  }
  .profile .profile-wrap {
    max-width: 1960px;
    background: url(/recruit/img/bg-profile-wrap.png) no-repeat center center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    height: 100%;
    box-sizing: border-box;
    /*padding-bottom: 50px;*/
  }
  .profile .h-ttl {
    font-size: 2.7vw;
    padding-bottom: 4vw;
  }
  .btn-detail span,
  .btn-detail a {
    background: url(/img/arrw-detail.png) no-repeat 0 bottom;
    color: #fff;
    text-decoration: none;
    line-height: 2;
    letter-spacing: 3px;
    padding: 39px 0 0 2px;
    font-size: 18px;
    height: 177px; 
    box-sizing: border-box;
    display: block;
  }
}
.btn-detail--bg span,
.btn-detail--bg a {
  background: url(/img/arrw-detail-02.png) no-repeat 0 bottom;
  padding: 0 0 0 14px;
  height: auto;
  width: 266px;
  font-size: 28px;
  text-shadow: 2px 2px 10px #000;
  font-weight: bold;
}  
@media all and (max-width: 767px) {
  .head-box {
    font-size: 16px;
    padding: 20px;
  }
  .h-ttl {
    font-size: 5.625vw;
    line-height: 1.3;
    padding-bottom: 15px;
    max-width: 200px;
    margin: 0 auto;
  }
  .h-ttl span {
    display: block;
    font-size: 2.8125vw;
    letter-spacing: 3px;
  }
  .btn-detail01 {
    font-size: 3.75vw;
    width: 200px;
    padding: 7px 0;
    border-width: 1px;
  }
  .profile {
    position: relative;
  }
  .profile .h-ttl {
    padding-bottom: 20px; 
  }
  .profile .inner {
    position: absolute;
    left: 0;
    top: 15%;
    width: 100%;
  }
  .profile .profile-txt {
    font-size: 3.7vw;
    max-width: 200px;
    margin: 0 auto;
  }
  .anc-list--col2 li {
    width: 50%;
  } 
}
@media all and (min-width: 568px)and (max-width: 767px) {
  .profile .h-ttl,
  .profile .profile-txt {
    max-width: 320px;
  }
  .profile .inner {
    max-width: 100%;
  }
  .profile .profile-txt {
    font-size: 3.4vw;
  }
}
@media all and (min-width: 730px)and (max-width: 767px) {
  .profile .h-ttl,
  .profile .profile-txt {
    max-width: 360px;
  }
}

/* works
---------------------------------------------------------- */
.works {
  position: relative;
  padding-top: 120px;
}
.works:after {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 55%;
  width: 100%;
  content: ""; 
  background: url(/recruit/img/bg-works.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.works .inner {
  position: relative;
  z-index: 10;
  padding-bottom: 270px;
}
.works .h-ttl {
  padding-bottom: 10px;
}
.works .h-ttl span {
  padding-bottom: 10px;
}
.works .works-txt {
  font-size: 35px;
  text-align: center;
}
.bnrList li:nth-child(1) a .bg { background-image: url(/recruit/img/bg-bnrlist-01.jpg);}
.bnrList li:nth-child(2) a .bg { background-image: url(/recruit/img/bg-bnrlist-02.jpg);}

@media all and (max-width: 767px) {
  .bnrList {
    margin-top: 15px;
    padding: 0 10px;
  }
  .works {
    padding-top: 25px;
  }
  .works .inner {
    padding-bottom: 60px;
  }
  .works .h-ttl {
    padding-bottom: 0;
  }
}


/* business
---------------------------------------------------------- */

.writing-txt,
.writing-mode p {
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.business .inner {
  position: relative;
  z-index: 1;
}
.business .inner  {
  text-shadow: 2px 2px 10px #000;
}
.business .business-box {
  display: flex;
  justify-content: flex-end;
  margin: 75px 5px 0 0;
  position: relative;
  z-index: 1;
}
@media all and (min-width: 768px) {
  .business {
    background: url(/img/bg-business.png) no-repeat center bottom;
    height: 554px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 210px;
    color: #fff
  }
  .business .business-wrap {
    position: relative;
    height: 644px;
    max-width: 2000px;
    margin: 0 auto;
  }
  .business .business-wrap:after {
    background: url(/img/bg-business-wrap.png) no-repeat center bottom;
    position: absolute;
    left: 0;
    bottom: 0;
    content:"";
    width: 100%;
    height: 100%;
  }
  .business-wrap > a {
    display: block;
    text-decoration: none;
    height: 86%;
    cursor: pointer;
    position: relative;
    z-index: 1;
    color: #fff;
  }
  .business-wrap > a:hover {
    opacity: 0.7;
  } 
  .business-img {
    text-align: center;
    display: flex;
    justify-content: center;
    padding-left: 200px;
  }
  .business .ttl01 {
    padding-top: 140px;
    font-size: 55px;
  }
  .business .ttl02{
    padding-top: 0;
    font-size: 37px;
  }
  
}
@media all and (max-width: 767px) {
  .business {
    margin-bottom: 20px;
    position: relative;
  }
  .business .business-box {
    margin: 0;
  }
  .business .business-img span {
    position: absolute;
    left: 42%;
    top: 30px;
    font-size: 5.625vw;
    padding-top: 12px;
    color: #fff;
    letter-spacing: 6px;
  }
  .business .business-img .ttl02 {
    position: absolute;
    left: 50.8%;
    top: 20px;
    font-size: 3vw;
    padding-top: 10px;
    letter-spacing: 4px;
  }
  .business .btn-detail{  
    position: absolute;
    right: 0;
    bottom: 50px;
  }
  .business .btn-detail span {
    text-shadow: none;
    margin-right: 20px;
  }
  .btn-detail {
    clear: both;
    max-width: 320px;
    margin: 0 auto;
  }
  .btn-detail a,
  .btn-detail span {
    background: url(/img/arrw-detail-sp.png) no-repeat 0 bottom;
    background-size: 102px 11px;
    color: #fff;
    text-decoration: none;
    padding: 10px 0 1px 2px;
    margin-right: 72px;
    box-sizing: border-box;
    font-size: 3.75vw;
    width: 102px;
    display: block;
    float: right;
    font-weight: 500;
  }
}


/* service
---------------------------------------------------------- */

.writing-txt,
.writing-mode p {
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.service .inner {
  position: relative;
  z-index: 1;
}
.service .inner  {
  text-shadow: 2px 2px 10px #000;
}
.service .service-box {
  display: flex;
  justify-content: flex-end;
  margin: 75px 5px 0 0;
  position: relative;
  z-index: 1;
}
@media all and (min-width: 768px) {
  .service {
    background: url(/img/bg-service.jpg) no-repeat center bottom;
    height: 554px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 210px;
    color: #fff
  }
  .service .service-wrap {
    position: relative;
    height: 644px;
    max-width: 2000px;
    margin: 0 auto;
  }
  .service .service-wrap:after {
    background: url(/img/bg-service-wrap.png) no-repeat center bottom;
    position: absolute;
    left: 0;
    bottom: 0;
    content:"";
    width: 100%;
    height: 100%;
  }
  .service-wrap > a {
    display: block;
    text-decoration: none;
    height: 86%;
    cursor: pointer;
    position: relative;
    z-index: 1;
    color: #fff;
  }
  .service-wrap > a:hover {
    opacity: 0.7;
  } 
  .service-img {
    text-align: center;
    display: flex;
    justify-content: center;
    padding-right: 40px;
  }
  .service .ttl01 {
    padding-top: 140px;
    font-size: 55px;
  }
  .service .ttl02{
    padding-top: 0;
    font-size: 37px;
  }
  
}
@media all and (max-width: 767px) {
  .service {
    margin-bottom: 20px;
    position: relative;
  }
  .service .service-box {
    margin: 0;
  }
  .service .service-img span {
    position: absolute;
    left: 42%;
    top: 30px;
    font-size: 5.625vw;
    padding-top: 12px;
    color: #fff;
    letter-spacing: 6px;
  }
  .service .service-img .ttl02 {
    position: absolute;
    left: 50.8%;
    top: 20px;
    font-size: 3vw;
    padding-top: 10px;
    letter-spacing: 4px;
  }
  .service .btn-detail{  
    position: absolute;
    right: 0;
    bottom: 50px;
  }
  .service .btn-detail span {
    text-shadow: none;
    margin-right: 20px;
  }
  .btn-detail {
    clear: both;
    max-width: 320px;
    margin: 0 auto;
  }
  .btn-detail a,
  .btn-detail span {
    background: url(/img/arrw-detail-sp.png) no-repeat 0 bottom;
    background-size: 102px 11px;
    color: #fff;
    text-decoration: none;
    padding: 10px 0 1px 2px;
    margin-right: 72px;
    box-sizing: border-box;
    font-size: 3.75vw;
    width: 102px;
    display: block;
    float: right;
    font-weight: 500;
  }
}

/* message
---------------------------------------------------------- */

.message {
  background: -moz-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  background: -o-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  background: -ms-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  background: -webkit-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  margin-bottom: 130px;
  color: #ffff;
}
.message .inner {
  display: flex;
  -webkit-box-pack: space-between;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 130px 0;
}
.message .message-box {
  max-width: 800px;
  margin: 0 auto;
}
@media all and (min-width: 768px) {
  .message .message-box {
    font-size: 18px;
  }
}
@media all and (max-width: 767px) {
  .btn-detail01 {
    width: 100%
  }
  .message {
    margin-bottom: 25px;
  }
  .message .inner {
    padding:  25px 0;
  }
  .message .h-ttl {
    padding-bottom: 0;
  }
  .message .message-box {
    padding: 0 10px;
  }
  .message .message-box p {
    padding-top: 10px;
  }
}

/* requirement
---------------------------------------------------------- */

.requirement  {
  color: #fff;
  display: flex;
  align-items: center;
}
.requirement .requirement-ttl {
  text-align: center;
  padding: 77px 0 100px;
}
.requirement {
  text-shadow: 2px 2px 10px #000;
}
.requirement .btn-detail a {
    margin: 0 auto;  
}
.requirement .inner {  
  position: relative;
}
.requirement .inner:before {
    background: #fff;
    position: absolute;
    right: 19px;
    bottom: -2px;
    width: 2px;
    height: 25px;
    content: "";
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    z-index: 10;
}
.requirement .inner:after {
    background: #fff;
    position: absolute;
    right: 10px;
    bottom: 0;
    content: "";
    height: 2px;
    width: 40%;
}
.requirement .requirement-box {
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
  text-shadow: 2px 2px 10px #000;
}
.requirement a {
  display: block;
  z-index: 100;
  position: relative;
  color: #fff;
  text-decoration: none;
  height: 100%;
  width: 100%;
}
.requirement h2 {
    padding: 15px 0 0 0;
    position: relative;
    margin: 90px 10px 90px 42%;
    max-width: 800px;
    display: flex;
    border-left: 2px solid #fff;
    height: 420px;
    position: relative;
}
.requirement h2:before {
    background: #fff;
    position: absolute;
    left: -110%;
    top: 0;
    content: "";
    height: 2px;
    width: 110%;
}
.requirement h2:after {
    background: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    height: 2px;
    width: 100%;
}
.requirement .detail {
  position: absolute;
  right: 50px;
  bottom: 8px;
  font-size: 28px;
  font-weight: bold;
}
.bnrList li a .text{
  left: -180px;
}
@media all and (min-width: 767px) {
  .requirement  {
    background: url(/recruit/img/bg-requirement.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 600px;
    position: relative;
  }
  .requirement a .detail {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .requirement a:hover {
    opacity: 0.7;
  }
  .requirement a:hover .detail {
    font-size: 26px;
  }
  .requirement .h-ttl span{
    font-size: 27px;
    padding-bottom: 10px;
  }
  .requirement  .ttl01 {
    font-size: 45px;
    font-weight: bold;
    letter-spacing: 6px;
    display: inline-block;
    padding-top: 50px;
  }
  .requirement .ttl02 {
    font-size: 30px;
    line-height: 1;
    font-weight: normal;
    letter-spacing: 5px;
  }
  .requirement a .detail {
    font-size: 28px;
    font-weight: bold;
  }
}
@media all and (max-width: 767px) {
  .requirement  {
    background: url(/recruit/img/bg-requirement.jpg) no-repeat center center;
    background-size: cover;
    padding: 10px 0;
  }
  #main .requirement-ttl {
    padding: 20px 0;
  }
  #main .requirement-ttl img {
    width: 200px;
    margin: 0 auto
  }
  .requirement-box .btn-detail01 {
    max-width: 150px;
  }
  .requirement .inner:before {
    right: 9px;
    width: 1px;
    bottom: -2px;
    height: 16px;
  }
  .requirement h2 {
    height: 140px;
    margin: 10px 0 10px 42%;
    border-left: 1px solid #fff; 
  }
  .requirement .ttl01 {
    font-size: 5.625vw;
    letter-spacing: 4px;
    padding-top: 15px;
  }
  .requirement .ttl02 {
    font-size: 3vw;
    padding-top: 0;
    letter-spacing: 2px;
  }
  .requirement .detail{
    font-size: 3.75vw;
    right: 30px;
    bottom: 5px;
  }
  .requirement .inner:after,
  .requirement h2:after,
  .requirement h2:before {
    height: 1px;
  }
  .requirement h2:after {
    width: 50%;
  }
  .requirement .inner:after {
    right: 5px;
  }
  .requirement .detail {
    font-size: 3.75vw;
  }
  .bnrList li a .text{
    left: -130px;
  }
}

@media (min-width: 586px) and (max-width: 767px) {
  .requirement {
    background-size: cover;
  }
  .bnrList li a .text {
    font-size: 30px;
  }
  .requirement h2 {
    height: 200px;
  }
}

/* ================================= 
  guideline.html
================================= */ 

.articlePh-r{
	/*max-width: 1400px;*/
	margin: 0 auto 40px;
}
.articlePh-r .headText{
	float: left;
	width: 60%;
	padding-right: 40px;
}
.articlePh-r img{
	float: right;
	width: 40%;
	height: auto;
}

@media all and (max-width: 767px) {
	.articlePh-r .headText{
		float: none;
		width: 100%;
		padding-right: 15px;
	}
	.articlePh-r img{
		float: none;
		width: 100%;
		margin-bottom: 20px;
	}
}

/* ================================= 
  training.html
================================= */ 

.txtList{
	max-width: 1600px;
	margin: 10px auto 40px;
	list-style: disc;
}
.txtList li{
	margin-left: 2.5em;
}


/* ================================= 
  interview_eng01.html
================================= */ 

@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px)  { 
  #interview_eng01 .kvModule .kv-txt {
    padding-left: 110px!important;
  }
  #interview_eng01 .info-ttl {
    height: 850px!important;
  }
  #interview_eng01 .info,
  #interview_eng01 .kvModule {
    height: 1000px!important;
  }
}
@media (min-width: 768px) {
  #interview_eng01 .kvModule {
    position: relative;
  }
  #interview_eng01 .kvModule img {
      width: 100%;
      height: calc(100vh - 104px);
      min-height:680px;
      object-fit: cover;
      font-family: 'object-fit: cover;'; /*IE対策*/
      position: absolute;
      left: 0;
      top: 0;
  }

  #interview_eng01 .info,
  #interview_eng01 .kvModule {
    height: calc(100vh - 104px);
    min-height:680px;
  }
  #interview_eng01 .kvModule {
    background-image: none;
  }
  #interview_eng01 .kvModule--bg .inner:after {
     background: url(/recruit/img/interview_eng01/bg-kv-line-02.png) no-repeat 0 0;
     height: 587px;
     left: -290px;
  }
  #interview_eng01 .kvModule .kv-txt {
    font-size: 50px;
    height: 520px;
    box-sizing: border-box;
    letter-spacing: 8px;
    padding-top: 30px;
    padding-bottom: 0;
  }
  #interview_eng01 .kvModule .kv-txt small {
    font-size: 46px;
    bottom: 0;
  }
  #interview_eng01 .info {
    background: #fff;
    width: 350px;
    position: absolute;
    /*right: 0;*/
	right: -100px;
    top: 0;
  }
  #interview_eng01 .info .inr {
    position: relative;
    height: 100%;
  }
  #interview_eng01 .info-ttl {
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    /*font-size: 40px;
    padding: 50px 0 0 110px;*/
    font-size: 40px;
    padding: 10px 0 20px;
    line-height: 1.5;
    letter-spacing: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: calc(100vh - 250px);
    min-height:500px;
  }
  #interview_eng01 .info-txt {
    text-align: center;
    font-size: 18px;
    position: absolute;
    left: 0;
    bottom: 40px;
    width: 100%;
  }
  #interview_eng01 .info-txt span {
    display: block;
    font-size: 36px;
  }
  #interview_eng01 .imgBox {
    padding-bottom: 100px;
  }
  #interview_eng01 .imgBox .inr {
    max-width: 1400px;
    margin: 0 auto;
  }
  #interview_eng01 .imgBox .imgBox-img {
    width: 47.5%;
    box-sizing: border-box;
  }
  #interview_eng01 .imgBox .imgBox-img img {
    width: 100%;
  }
  #interview_eng01 .imgBox .imgBox-txt {
    width: 52.5%;
    box-sizing: border-box;
    padding: 0 70px;
    display: flex;
    align-items: center;
    font-size: 20px;
  }
  #interview_eng01 .imgBox .imgBox-txt h2 {
    font-size: 42px;
    line-height: 1.4;
    padding-bottom: 20px;
  }
  #interview_eng01 .imgBox--bg {
    margin: 80px 0 -80px;
    padding-bottom: 180px;
  }
  #interview_eng01 .imgBox--bg .imgBox-img img {
    margin-top: -80px;
  }
  #interview_eng01 .imgBox-txt {
    margin-top: 40px;
  }
  #interview_eng01 .holidayBox {
    background: url(/recruit/img/interview_eng01/bg-holidayBox.png) no-repeat center bottom 76px;
  }
  #interview_eng01 .messageBox {
    font-size: 20px;
  }
}
#interview_eng01 .info-ttl {
  color: #009462;
}
#interview_eng01 .imgBox--bg {
  background-color: #f6f6f6;
}
#interview_eng01 .imgBox .inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
}
#interview_eng01 .imgBox-last h2 {
  padding-top: 60px;
}
#interview_eng01 .holidayBox .inr {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
}
#interview_eng01 .holidayBox-txt {
  width: 400px;
  box-sizing: border-box;
  padding: 60px;
  background-color: #ebf7f3;
  margin: 0;
  z-index: 10;
  position: relative;
  font-size: 20px;
  height: 100%;
}
#interview_eng01 .holidayBox-txt h2 {
  color: #009462;
  font-size: 32px;
  text-align: center;
  padding-bottom: 20px;
}
#interview_eng01 .holidayBox-txt h2 span {
  font-size: 24px;
  display: inline-block;
  position: relative;
  padding: 0 25px;
  line-height: 1.2;
  margin-bottom: 5px;
  letter-spacing: 4px;
}
#interview_eng01 .holidayBox-txt h2 span:after {
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #009462;
  width: 2px;
  height: 22px;
  content: "";
  transform: rotate(-35deg);
  -webkit-transform: rotate(-35deg);
}
#interview_eng01 .holidayBox-txt h2 span:before {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #009462;
  width: 2px;
  height: 22px;
  content: "";
  transform: rotate(35deg);
  -webkit-transform: rotate(35deg);
}
#interview_eng01 .holidayBox-img {
  padding: 160px 0 0 60px;
  margin-right: -80px;
  width: 58%;
}
#interview_eng01 .holidayBox-img img {
  width: 100%;
}
#interview_eng01 .messageBox {
  background: -moz-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  background: -o-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  background: -ms-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  background: -webkit-radial-gradient(top left, circle farthest-side, #00955e 0%, #15ac9d 100%);
  color: #ffff;
  max-width: 1400px;
  margin: 100px auto ;
}
#interview_eng01 .messageBox .inr {
  padding: 60px 70px;
}
#interview_eng01 .messageBox h2 {
  font-size: 36px;
  padding-bottom: 20px;
}
@media all and (min-width: 768px)and (max-width: 1400px) {
  #interview_eng01 .kvModule .inner:after {
    left: -220px;
  }
  #interview_eng01 .kvModule .kv-txt small {
    left: 20px;
  }
  #interview_eng01 .kvModule .kv-txt {
    padding-left: 100px;
  }
}
@media (max-width: 767px) {
  #interview_eng01 .kvModule .kv-txt span {
    top: 12%;
    left: 13%;
    font-size: 4.6875vw;
    letter-spacing: 2px;
  }
  #interview_eng01 .kvModule .kv-txt small {
    top: 41%;
    bottom: inherit;
  }
  #interview_eng01 .info {
    padding: 20px;
  }
  #interview_eng01 .info-ttl {
    font-size: 6.25vw;
    padding-bottom: 10px;
  }
  .info-txt {
    display: flex;
    font-size: 14px;
  }
  .info-txt span {
    font-size: 4.6875vw;
    padding-right: 20px;
  }
  #interview_eng01 .imgBox .inr {
    flex-direction: column;
    padding: 0 0 50px 20px; 
  }
  #interview_eng01 .imgBox .sp-reverse {
    flex-direction: column-reverse;  
  }
  
  #interview_eng01 .imgBox h2 {
    font-size: 5.3125vw;
    padding: 20px 0;
  }
  #interview_eng01 .imgBox-txt {
    padding-right: 20px;
  }
  #interview_eng01 .imgBox--bg img {
    margin: 0 0 0 -20px;
  }
  #interview_eng01 .imgBox--bg {
    padding-bottom: 50px;
    margin-bottom: -50px;
  }
  #interview_eng01 .holidayBox .inr {
    flex-direction: column-reverse;
  }
  #interview_eng01 .holidayBox-txt {
    width: 80%;
    margin: 0 auto;
    padding: 15px;
    font-size: 14px;
  }
  #interview_eng01 .holidayBox-txt h2 {
    padding-bottom: 10px;
     font-size: 5vw;
  }
  #interview_eng01 .holidayBox-txt h2 span {
    font-size: 3.75vw;
  }
  #interview_eng01 .holidayBox-img {
    width: 100%;
    margin: -90px 0 0 0;
    padding: 0;
  }
  #interview_eng01 .holidayBox-txt h2 span:after {
    width: 1px;
    height: 20px;
  }
  #interview_eng01 .holidayBox-txt h2 span:before {
    width: 1px;
    height: 20px;
  }
  #interview_eng01 .messageBox {
    margin: 50px 0;
  }
  #interview_eng01 .messageBox .inr {
    padding: 20px;
  }

  #interview_eng01 .messageBox  h2 {
    font-size: 5.625vw;
    padding-bottom: 15px;
  }

}
@media (max-width: 320px) {
  #interview_eng01 .holidayBox-img {
    margin: -80px 0 0 0;
  }
}

@media screen and (min-width:0\0) {
.profile .profile-wrap {
display: block;
padding: 100px 0;
}
.profile {
height: 650px;
}
}

#interview_eng01 .kvModule-bg .inner .kv-txt span{
  z-index:1;
}

#interview_eng01 .kvModule-bg .inner .kv-txt small{
  z-index:1;
}

#interview_eng01 .kvModule-bg .inner .sp{
  width:100%;
  overflow:hidden;
}

#interview_eng01 .kvModule-bg .inner .sp img{
  width:150%; height:75vw;
  position:relative;
  left:50%;
  transform: translateX(-50%);
}

/* ==============================
  welfare.html
=============================== */
.cntIco-box{
	max-width: 1300px;
	margin: 0 auto 50px;
	text-align: center;
}
.cntIco-box img{
	width: 100%;
	height: auto;
}
.cntIco-box li{
	display: inline-block;
	position:relative;
	width: 35%;
	padding: 20px 10px 0;
	margin: 0 20px 40px;
	border: 1px solid #ccc;
	background: #f6f6f6;
	box-sizing: border-box;
}
.cntIco-box li p{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  	transform: rotate(.03deg) translate(-50%,0);
	position:absolute;
	width: 90%;
	top: 20px;
	left: 50%;
	text-align: center;
	font-size: 18px;
	-ms-transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
    font-weight: bold;
}
@media (max-width: 767px){
	.cntIco-box{
		width: 100%;
		margin-bottom: 40px;
		text-align: center;
	}
	.cntIco-box li{
		display: inline-block;
		width: 90%;
		padding: 20px 20px 0;
		margin: 0 auto 25px;
		border: 1px solid #ccc;
		vertical-align: top;
	}
	/*.cntIco-box li:nth-of-type(7n){
		margin-bottom: 0;
	}*/
	.cntIco-box li p{
		top: 25px;
		text-align: center;
		font-size: 14px;
	}
}

@media all and (min-width: 568px)and (max-width: 767px)  {
  .h-ttl {
    font-size: 30px;
  }
  .btn-detail01,
  .btn-detail span {
    font-size: 17px;
  }
  .service .btn-detail {
    bottom: 70px;
  }
  .kvModule .kv-btn a {
    font-size: 15px;
    padding-bottom: 11px;
  }
 
}

/*--youtube--*/
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9のアスペクト比 */
  height: 0;
}

.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
