@charset "utf-8";

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
common
font-family: 'Noto Serif JP', serif;
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ----------------------------------------------------
element base setting (common)
---------------------------------------------------- */
body {color: #000; line-height: 1.8;  background: #fff;}
a {color: #000; text-decoration: none;}
a:hover { text-decoration: underline;}
.clickable a, .clickable a:hover { color: #333;}
.flex{display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap;}
#mainContainer {width: 100%; position: relative; padding-top: 90px;  padding-top: min( 7.5vw , 90px);}
#home #mainContainer {padding-top: 0;}
.mgTop120{margin-top:120px; margin-top:min( 10vw , 120px);}
.mgBottom120{margin-bottom:120px; margin-bottom:min( 10vw , 120px);}

/* -------------------------------------------------------
header(common)
--------------------------------------------------------- */
#header {width: 100%; height: 90px; height: min( 7.5vw , 90px); position: absolute; left: 0; top: 0; display: flex; display: -webkit-flex; align-items: center;	padding-left: 50px; padding-left: min( 4.16vw , 50px); z-index: 100;}
#header.fixed {position: fixed; background: #fff;}
#home #header {position: absolute;}
#home #header.fixed {position: fixed; background: #fff;}
#header #hd-logo {font-size: 2rem; font-size: min(1.66vw, 2rem); font-weight: 700; }
#header #hd-logo img {width: 198px; width: min(16.5vw , 198px); height: auto; vertical-align:middle;}
#header #hd-logo span {padding-left: 15px; padding-left: min( 1.25vw, 15px); margin-left:15px; margin-left: min( 1.25vw, 15px); position: relative; line-height: 1;}
#header #hd-logo span::before {content: ""; width: 1px; height: 20px; height: min(1.66vw, 20px); background: #000; position: absolute; left: 0; top: 50%; transform: translateY(-45%);}
#btnGlobal {position: absolute; right: 0; top: 0; height: 90px; height: min( 7.5vw , 90px);  width: 90px; width: min( 7.5vw , 90px);  z-index: 120; display: flex; display: -webkit-flex; justify-content:center; align-items: center; background: #000; cursor: pointer;}
#btnGlobal .btnWrapGlobal { width: 42px; width: min( 3.5vw , 42px); height: 30px; height:min(2.5vw,30px ); position: relative;}
#btnGlobal .btnLine { height: 1px; background: #fff; position: absolute; right:0; width: 100%;}
#btnGlobal .btnLine.btnLineT {  top: 0;}
#btnGlobal .btnLine.btnLineM { top: 50%; }
#btnGlobal .btnLine.btnLineB { bottom: 0; }
#btnGlobal.active .btnLine {background: #fff;}
#btnGlobal.active .btnLine.btnLineT { display: none;}
#btnGlobal.active .btnLine.btnLineM { transform: translateY(0) rotate(45deg) ;}
#btnGlobal.active .btnLine.btnLineB { transform: rotate(-45deg); bottom:inherit; top: 50%;}
#btnGlobal .btnLine.btnLineM, #btnGlobal .btnLine.btnLineB {-moz-transition: all, ease-in-out, 0.3s;  -o-transition: all, ease-in-out, 0.3s;  -webkit-transition: all, ease-in-out, 0.3s; transition: all, ease-in-out, 0.3s;}

#grandMenu {background: rgba(0,0,0,0.8); width: 100%; height: 100%; position: fixed; z-index: 100;  left: 0; top: 0; display: none; overflow: auto; padding: 100px 5%;}
#grandMenu a {color: #fff;}
#grandMenu #navGlobal  {  width: 90%; max-width: 960px; margin: 0 auto;}
#grandMenu #navGlobal li { font-size: 20px; font-size: min(1.66vw , 20px); border-bottom: 1px dotted #888; line-height: 1;}
#grandMenu #navGlobal li a {display:  block; padding:30px 0; padding: min(2.5vw,30px) 0; position: relative;}
#grandMenu #navGlobal li a::after {content:""; position: absolute; right: 15px; right: min(1.25vw,15px); top: 50%; width: 15px; width: min(1.25vw,15px); height: 15px; height: min(1.25vw,15px);border-top:1px solid #fff; border-right: 1px solid #fff; transform:  rotate(45deg) translateY(-50%);}
#grandMenu #navGlobal li.btn-navChild a::after { transform:  rotate(135deg) translate(-50% , 50%);}
#grandMenu #navGlobal li.btn-navChild .navChild {display: none;}
#grandMenu #navGlobal li.btn-navChild .navChild  li {border-bottom: none; font-size: 18px; font-size: min(1.5vw, 18px); margin-bottom: 10px; margin-bottom: min( 0.8vw, 10px);}
#grandMenu #navGlobal li.btn-navChild .navChild a {padding:20px; padding: min(1.66vw, 20px); background: #444; border-radius: 5px;}
#grandMenu #navGlobal li.btn-navChild .navChild a::after {transform: translateY(-50%)rotate(45deg) ; width: 12px; width: min(1vw,12px); height: 12px; height: min(1vw,12px);}

#hdEntry {position: absolute; right: 90px; right: min( 7.5vw , 90px); top: 0; width: 200px; width: min(16.6vw, 200px); height: 90px; height: min( 7.5vw , 90px); }
#hdEntry a {background: #4dca61; width: 100%; height: 100%; display: flex; display: -webkit-flex; justify-content: center; align-items: center; color: #fff; font-weight: 700; font-size: 20px; font-size: min(1.66vw, 20px); letter-spacing: 0.2rem;}

/* ----------------------------------------------------
footer (common)
---------------------------------------------------- */
#navLocal ul {margin-bottom: 100px; margin-bottom: min( 8.3vw , 100px);}
#navLocal ul li {width: 33.3333333%;}
#navLocal ul li a {display: block; position: relative;}
#navLocal ul li a img{width: 100%; height: auto; }
#navLocal ul li a .navTxtLocal {position: absolute; right: 40px; right: min(3.3vw, 40px); bottom: 40px; bottom: min(3.3vw, 40px); color: #fff; z-index: 10;  margin: 0;}
#navLocal ul li a .navTxtLocal span {position: relative; padding-bottom: 5px; padding-bottom: min(0.4vw, 5px);}
#navLocal ul li a .navTxtLocal span::before {content: ""; width:calc(100% + 15px); width: calc( 100% + min(1.25vw,15px) );height: 1px; background: #fff; position: absolute; left: 0; bottom: 0;}
#navLocal ul li a .navTxtLocal span::after{content: ""; width: 7px; width: min(0.58vw, 7px); height:7px; height: min(0.58vw, 6px);border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; right: 0; bottom: 1px; transform:translate(15px , 50%)rotate(45deg); transform:translate(min(1.25vw, 15px) , 50%)rotate(45deg)}
#navLocal ul li a::before {content: ""; width: 100%;  height: 100%; background: #007a25; position: absolute; left: 0; top: 0; mix-blend-mode: screen;}
#navLocal ul li a::after {content: ""; width: 100%; height: 100%; background: rgba(0,0,0,0.3); position: absolute; left: 0; top: 0; }

#footer {padding: 30px 50px 0; padding: min( 2.5vw, 30px)  min( 4.16vw , 50px) 0; background: #ebebeb; min-height: 200px; min-height: min(16.6vw,200px); display: flex; display: -webkit-flex; justify-content: space-between;}
#footer .ft-logo img {width: 198px; width: min(16.5vw , 198px); height: auto;}

#pagetop {position: fixed; bottom: 3%; right: 50px;  right: min( 4.16vw , 50px);}
#pagetop a { display:block; width: 50px; height: 50px; background-color: #4dca61; position: relative;}
#pagetop a::before {content: ""; width: 10px; height: 10px; border-top: 2px solid #fff; border-right: 2px solid #fff; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-45deg);}

/* ----------------------------------------------------
home(pc)
---------------------------------------------------- */
#homContent {margin-bottom: 200px; margin-bottom: min( 16.6vw , 200px);}
#homVisual {position: relative; width: 100%; padding-top: 57.3333%; background: url("../img/home/img-homVisual-01.png") center center / cover no-repeat;}
#homVisual .homWrapVisual {position: absolute; width: 100%; height: 100%; top: 0; left: 0; display: flex; display: -webit-flex; align-items: center; justify-content: center;}
.homTxtVisual {width: 90%; }
.homTxtVisual h2 {font-weight: 900; font-size: 8.5rem;  font-size: min(7vw , 8.5rem); line-height: 1.5; margin-bottom: 40px; margin-bottom: min( 3.3vw, 40px);}
.homTxtVisual p {margin: 0;}
.homTxtVisual p img {width: 400px; width: min( 33.3vw , 400px); }

.homInrContent {width: 90%; max-width: 1200px; margin-left: auto; margin-right: auto; position: relative;}
.homBtnView {font-size: 1.8rem; font-size: min( 1.5vw , 1.8rem); font-weight: 300; margin: 0; text-align: right; letter-spacing: 0.15rem;}
.homBtnView a {position: relative; padding: 0 10px 5px 0; padding: 0 min( 0.83vw , 10px) min( 0.4vw , 5px) 0;}
.homBtnView a::before {content: ""; width: 100%; height: 1px; background: #000; position: absolute; left: 0; bottom: 0;}
.homBtnView a::after {content: ""; width: 6px; height: 6px; border-top: 1px solid #000; border-right: 1px solid #000; position: absolute; right: 0; bottom: 0; transform-origin: right center; transform:translateY(4.5px) rotate(45deg);}

#homMessage {margin: 100px 0 180px; margin: min( 8.3vw , 100px) 0 min( 15vw , 180px); position: relative;}
.homTxtMsg {width: 56.25%; position: relative;}
.homImgMsg{width: 39%;}
.homImgMsg img {width: 100%; height: auto;}
.homTxtMsg h2 {font-size: 3.7rem; font-size: min(2.9vw , 3.7rem); font-weight: 500; line-height: 1.5; margin-bottom: 35px; margin-bottom: min( 2.9vw , 35px);}
.homReadMsg {margin-bottom: 40px; margin-bottom: min( 3vw , 40px); font-size: 1.8rem; font-size: min( 1.5vw , 1.8rem); font-weight: 300; line-height: 2.4;}
.homSubMsg {margin: 0; font-weight: 800; font-size: 2rem; font-size: min( 1.66vw , 2rem); letter-spacing: 0.8rem; position: absolute; left: 10px; left: min(0.4vw, 10px); top: 50%; transform: translateY(-50%);   -ms-writing-mode: tb-rl;   writing-mode: vertical-rl;} 

#homEmployee {position: relative; padding-top: 180px; padding-top: min( 15vw, 180px);}
#homEmployee h2 {position: absolute; left: 0; top: 0; width: 100%; text-align: center; font-size: 15.7rem; font-size: min(13vw , 15.7rem); color: rgba(0,0,0,0.15); line-height: 1; font-weight: 800; transform:translateY(-25%); letter-spacing: 0.3rem; z-index: -1;}
.homBlockEmp {position: relative;}
.homBlockEmp:not(:last-child){margin-bottom: 115px; margin-bottom: min( 9.58vw, 115px);}
.homBlockEmp::before {content: ""; width: 50%; height: calc(100% + 50px); height: calc(100% + min(4.16vw, 50px));  position: absolute; bottom: -50px; bottom: max( -4.16vw , -50px);}
.homBlockEmp--R::before  {background: url("../img/home/bg-homEmp-01.png") right top / auto 100% no-repeat; right: 0; }
.homBlockEmp--L::before  {background: url("../img/home/bg-homEmp-02.png") left top / auto 100% no-repeat; left: 0; }
.homBlockEmp .homInrContent {align-items: center; position: relative; display: flex; display: -webkit-flex;  height: 450px; height: min(37.5vw , 450px);}
.homImgEmp {position: absolute; bottom: -35px; bottom: max( -2.9vw , -35px); height: calc(100% + 125px ) ;  height: calc(100% + min( 10.4vw , 125px) ) ;}
.homBlockEmp--R .homImgEmp {left: 0;}
.homBlockEmp--L .homImgEmp {right: 0;}
.homTxtEmp {width: 52%; position: relative;}
.homBlockEmp--R .homTxtEmp {margin-left: 48%;}
.homImgEmp img {width: auto; height: 100%;  max-height: 585px; max-height: min( 48.75vw , 585px);}
.homTxtEmp h3 {font-size: 2.6rem; font-size: min(2.16vw , 2.6rem); line-height: 1.6; margin-bottom: 40px; margin-bottom: min(3.3vw, 40px);}
.homInfoEmp p {margin: 0;}
.homInfoEmp .homNameEmp {font-size: 2rem; font-size: min(1.66vw, 2rem);}
.homInfoEmp .homNameEmp span {font-size: 1.6rem; font-size: min(1.33vw, 1.6rem); color: #4dca61; margin-left: 10px; margin-left: min(0.83vw, 10px);}
.homInfoEmp .homDataEmp {font-weight: 300;}
.homInfoEmp .homBtnView {position: absolute; right: 0; bottom: 0;}

#homRecruit {margin: 240px auto 165px; margin: min(20vw , 240px) auto  min(13.75vw , 165px) ;}
.homMainRecruit {text-align: center; position: relative; padding-bottom: 50px; padding-bottom: min(4.16vw, 50px); margin-bottom: 40px; margin-bottom: min(3.3vw, 40px);}
.homImgRec img {width: 100%; height: auto;}
.homMainRecruit h2 {font-size: 3.7rem; font-size: min(3vw , 3.7rem); font-weight: 500; line-height: 1.6; margin: 60px 0 40px; margin: min(5vw , 60px) 0 min( 3.3vw, 40px); letter-spacing: 0.2rem;}
.homMainRecruit p {margin-bottom: 0; line-height: 2.4; font-weight: 300;}
.homMainRecruit .homBtnView {position: absolute; right: 0; bottom: 0;}
/*.homMainRecruit::before {content: ""; width: 180px; width: min(15vw , 180px); height: 1px; background: #000; position: absolute; right: 0; bottom:0; transform-origin: left bottom; transform: translateX(25%) rotate(-45deg);}*/
.homBtnRec{width: 47.5%; height: 145px; height: min(12.083vw , 145px); display: flex; display: -webkit-flex; justify-content: center;align-items: center; text-align: center; position: relative; background-size: cover; background-repeat: no-repeat; background-position: center center;}
.homBtn-L {width: 47.5%; height: 220px; height: min(18.3vw , 220px); display: flex; display: -webkit-flex; justify-content: center;align-items: center; text-align: center; position: relative; background-size: cover; background-repeat: no-repeat; background-position: center center;}
.homBtnRec h3, .homBtn-L h3 {font-size: 3.2rem; font-size: min( 2.66vw , 3.2rem); font-weight: 700; letter-spacing: 0.3rem; color: #fff;}
.homBtnRec .homBtnView, .homBtn-L .homBtnView {position: absolute; right: 20px;  right: min( 1.66vw , 20px); bottom: 20px; bottom: min( 1.66vw , 20px);}
.homBtn-L {margin-bottom: 50px; margin-bottom: min(4.16vw , 50px); width: 100%; height: 145px; height: min(12vw , 145px); }
.homBtnRec .homBtnView a, .homFlowRec .homBtnView a, .homRecRec .homBtnView a { color: #fff; }
.homBtnRec .homBtnView a::before, .homFlowRec .homBtnView a::before, .homRecRec .homBtnView a::before{background: #fff;}
.homBtnRec .homBtnView a::after, .homFlowRec .homBtnView a::after, .homRecRec .homBtnView a::after {border-color: #fff;}
.homReferral {background-image: url("../img/home/bg-homReffaral-01.jpg");}
.homComback {background-image: url("../img/home/bg-homComback-01.jpg");}
.homRecRec {background-color:#00995a; }
.homFlowRec {background-color:#8edd9b; }
.homFaqRec {background-color:#fff; border: 1px solid #00995a; }
.homFaqRec h3, .homFaqRec a {color: #00995a;}
.homFaqRec .homBtnView a::before{background: #00995a;}
.homFaqRec .homBtnView a::after {border-color: #00995a;}

#homRegional{padding-top: 180px; padding-top: min(15vw, 180px); position: relative;}
#homRegional::before {content: ""; width: 62%; height: calc(100% - 70px); height: calc( 100% - min( 5.8vw , 70px)); background: url("../img/home/bg-homRegonal-01.jpg") center center / cover no-repeat; position: absolute; right: 0; top: 0;}
#homRegional .homInrContent {z-index: 1;}
#homRegional .homInrContent  h2 {font-size: 69px; font-size: min( 5.75vw , 6.9rem); font-weight: 900; letter-spacing: 2rem; line-height: 1.5; margin-bottom: 40px; margin-bottom: min( 3.3vw , 40px);}
.homBtnEntry {height: 250px; height: min(20vw , 250px); display: flex; display: -webkit-flex; justify-content: center;align-items: center; text-align: center; position: relative; background: #00995a; }
.homBtnEntry h3 {color: #fff; font-size: 4rem; font-size: min(3.3vw , 4rem); font-weight: 900; letter-spacing: 1rem;}
.homBtnEntry .homBtnView {position: absolute; right: 20px;  right: min( 1.66vw , 20px); bottom: 20px; bottom: min( 1.66vw , 20px);}
.homBtnEntry a {color: #fff;}
.homBtnEntry .homBtnView a::before{background: #fff;}
.homBtnEntry .homBtnView a::after{border-color:#fff;}


/* ----------------------------------------------------
underlayer > common(pc)
---------------------------------------------------- */
.visual {margin-bottom: 100px; margin-bottom: min( 8.3vw , 100px);}
.txtVisual {height: 250px; height: min(20.8vw , 250px); display: flex; display: -webkit-flex; justify-content: center; align-items: center; position: relative; overflow: hidden;}
.txtVisual .ttlVisual{position: relative; z-index: 10; text-align: center; color: #00995a;}
.txtVisual .ttlVisual h2 {font-weight: 700; font-size: 4rem; font-size: min(3.3vw, 4rem); letter-spacing: 0.2rem;}
.txtVisual .ttlVisual p {margin: 0; font-weight: 700; letter-spacing: 0.3rem; font-size: 2rem; font-size: min(1.66vw, 2rem); }
.bgTxtVisual {margin: 0; font-family: 'Noto Serif JP', serif; position: absolute; left: 0; bottom:-15px; bottom: max(-1.25vw , -15px);  z-index: 1; line-height: 1; color: rgba(160,160,160,0.15); font-size: 18rem; font-size: min(15vw , 18rem); width: 100%; text-align: center; overflow: hidden;}
.bgImgVisual {width: 100%; height: 280px; height: min( 23.3vw, 280px); text-align: center;}
.bgImgVisual  img {width: 100%; height: 100%; object-fit: cover;}
.contInrContent {width: 90%; max-width: 1200px; margin-left: auto; margin-right: auto; margin-bottom: 100px; margin-bottom: min( 8.3vw , 100px); position: relative;}
.contCategoryMenu{font-size: 1.4rem; font-size: min(1.167vw , 1.4rem); line-height: 1.8rem; line-height: min(1.5vw , 1.8rem); text-align: center; margin-bottom: 60px!important; margin-bottom: min( 5vw, 60px)!important;}
.contCategoryMenu li{/*padding: 20px 0; padding: min( 1.667vw , 20px );*/ display: flex; display: -webkit-flex; justify-content: center; align-items: center;}
.contCategoryMenu li a{display:flex; flex-flow: column; text-align:center; padding: 20px 0; padding: min( 1.667vw , 20px ); width: 100%;}
.contCategoryMenu li a:hover {
  filter: alpha(opacity=50) !important;	opacity: .5 !important;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
.contCategoryMenu li a:hover {
  opacity: 0.5;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}

.contCategoryMenu .ccmTitle{background-color: black; color: white; width: 10%;}
.contCategoryMenu .ccmBt{width: 17%; background: #eaeaea; box-sizing: border-box; position: relative; box-shadow: 1px 1px 10px -3px rgba(0,0,0,0.3);}




#faq .contCategoryMenu .ccmBt{width: 21.5%;}
.contCategoryMenu .ccmBt_ile{background: #fff!important; border: 1px solid #eaeaea!important;}
.contCategoryMenu .ccmBt:before {
  content: "";
  position: absolute;
  right: 2px;
  bottom: 2px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 10px;
  border-color: transparent transparent #8edd9b transparent;
}
.contCategoryMenu .ccmBt p{margin: 0;}
.contCategoryMenu .ccmBt span{display: block!important; font-size: 1.5rem; font-size: min(1.25vw , 1.5rem);}
.catBox{margin-bottom: 120px; margin-bottom: min( 10vw, 120px);}

.catBox h3{position: relative; padding: 0 65px; text-align: center;}
.catBox h3:before{
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  background: #000;
}
.catBox h3 span{position: relative; padding: 0 1em; background: #fff; letter-spacing: 0.2em; font-size: 2.8rem; font-size: min(2.333vw , 2.8rem); }

.grTitle{border-left: solid 8px #00995A; font-size: 2.8rem; font-size: min(2.333vw , 2.8rem); letter-spacing: 0.2em; padding-left: 0.8em; margin-bottom: 40px; margin-bottom: min( 3.3vw , 40px);}


/* ----------------------------------------------------
underlayer > employee(pc)
---------------------------------------------------- */
.empVisual {margin-bottom: 60px; margin-bottom: min(5vw, 60px);}
.empInrVisual {width: 90%; max-width: 1200px; margin: 0 auto; height: 710px; height: min( 59vw, 710px); position: relative;}
.empImgPerson {margin: 0; position: absolute; z-index: 1; left: 50%; bottom: 0; transform: translateX(-50%); height: 100%;}
.empBgPerson {margin: 0; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%);height: 100%; max-height: 600px; max-height: min( 50vw , 600px);}
.empImgPerson img , .empBgPerson img {width: auto; height: 100%;}
.empNumVis {margin: 0; position: absolute; left: 0; top: 50%; transform: translateY(-50%); color: #a0a0a0; font-weight: 600; font-size: 2rem; font-size: min(1.66vw , 2rem); line-height: 1.2; letter-spacing: 1rem; z-index: 1;}
.empNumVis span {font-size: 6rem; font-size: min(5vw, 6rem); display: block;}
.empInfoVis {position: absolute; right: 0; bottom:0;  z-index: 1;}
.empInfoVis p {margin: 0; line-height: 1.6;}
.empInfoVis .empNameInfoVis {font-size: 2.6rem; font-size: min(2.16vw, 2.6rem);}
.empInfoVis .empNameInfoVis span {font-size: 1.8rem; font-size: min(1.5vw, 1.8rem); color: #4dca61; margin-left: 15px; margin-left: min(1.25vw, 15px);}
.empInfoVis ul {margin: 0; line-height: 1.6;}

#employee h2{font-size: 3.7rem; font-size: min(3.083vw, 3.7rem); text-align: center; margin-bottom: 60px; margin-bottom: min(5vw, 60px);}
.parsonLinnerPhoto01{width:100%; height: 550px; height: min( 45.833vw, 550px); margin-bottom: 110px; margin-bottom: min( 9.167vw , 110px );}
.parsonLinnerPhoto01 img{object-fit: cover; object-position: top center; width: 100%; height: 100%; }
.parsonClum{display: flex; display: -webkit-flex; justify-content: space-between; width: 93%; max-width: 1400px; margin: 0 auto; position: relative;}
#employee h3{font-size: 3.0rem; font-size: min(2.5vw, 3.0rem); line-height: 5.7rem; line-height: min(4.75vw, 5.7rem); margin-bottom: 30px; margin-bottom: min( 2.5vw , 30px );}
.parsonClum p, .parsonLastBox p{font-size: 1.6rem; font-size: min(1.333vw, 1.6rem); line-height: 4.9rem; line-height: min(4.083vw, 4.9rem); margin: 0;}

/*#person01Aria .parsonClum p{margin: 0 0 0 0;}
#person02Aria .parsonClum p{margin: 0 0 0 0;}
#person03Aria .parsonClum p{margin: 0 0 150px 0; margin: 0 0 min(12.5vw, 150px) 0;}*/

.parsonLastBox p{margin: 0;}
.prsBox01{width: 46.1%;}
.prsBox02{width: 46.1%; margin-top: 900px; margin-top: min(75vw, 900px);}
#person02Aria .prsBox02{margin-top: 950px; margin-top: min(79.167vw, 950px);}
#person03Aria .prsBox02{margin-top: 1050px; margin-top: min(87.5vw, 1050px);}


.parC_PhotoRight{position: absolute; top: 0; right: 0; width: 46.1%; height: 800px; height: min( 66.667vw , 800px );}
.parC_PhotoLeft{position: absolute; bottom: 0; left: 0; width: 46.1%; height: 800px; height: min( 66.667vw , 800px );}
.parC_PhotoRight img,.parC_PhotoLeft img{object-fit: cover; width: 100%; height: 100%; }

#person01Aria .parC_PhotoRight img,
#person02Aria .parC_PhotoRight img,
#person03Aria .parC_PhotoRight img{object-position: left 70% top 0%;}
#person01Aria .parC_PhotoLeft img,
#person02Aria .parC_PhotoLeft img,
#person03Aria .parC_PhotoLeft img{object-position: left 10% top 0%;}

.parsonLastBox{padding-top: 450px; padding-top: min( 37.5vw , 450px ); margin-top: 110px; margin-top: min( 9.167vw , 110px ); position: relative;}
.parLastPhoto{width: 100%; height: 770px; height: min( 64.167vw , 770px ); position: absolute; top: 0; left: 0;}
.parLastPhoto img{width: 100%; height: 100%; object-fit: cover; object-position: top center;}
.parsonLastBox .parWhiteBox{background-color: white; width: 93%; max-width: 1400px; margin: 0 auto; z-index: 5; position: relative;}
.parsonLastBox .parWhiteBox .prw_inner{width: 71.4%; max-width: 1000px; margin: 0 auto; padding: 100px 0; padding: min( 8.333vw , 100px ) 0;}



/* faq */
.ac_faq {width: 100%; margin-top: 30px; margin-top: min( 2.5vw , 30px );}
.bankOffice .ac-parent {border: 1px solid #676767;  color: #676767;}
.bankOffice .ac-parent::before,.bankOffice .ac-parent::after {background: #676767;}

.ac-parent {cursor: pointer; position: relative; padding: 30px; padding: min( 2.5vw , 30px ); border: 1px solid #00995a;  color: #00995a;}
.ac-parent::before {content: ""; position: absolute; top: 50%; right: 30px; right: min( 2.5vw , 30px ); width: min( 1.25vw , 15px ); height: 1px; background: #00995a; transform: translateY(-50%);}
.ac-parent::after {content: ""; position: absolute; top: 50%; right: 37px; right: min( 3.083vw , 37px ); width: 1px; height: min( 1.25vw , 15px ); background: #00995a; transform: translateY(-50%); transition: .3s;}
.ac-parent:hover{opacity: .65;	filter: alpha(opacity=65);  text-decoration: none;	transition: all 0.2s ease-in-out;}
.ac-child {display: none; padding: 20px 0; padding: min( 1.667vw , 20px ) 0;}
.ac-parent.open:after {top: 25%; opacity: 0; transform: rotate(90deg);}
/*アコーディオン文字設定*/
.ac-parent p{font-size: 2rem; font-size: min( 1.667vw , 2rem ); padding: 0 0 0 0; margin-bottom: 0; font-weight: 600; display: inline-block; vertical-align: top; width: 95%;}
.ac-parent span{font-size: 2.4rem; font-size: min( 2vw , 2.4rem ); line-height: min( 2.667vw , 3.2rem ); display: inline-block; vertical-align: top; margin-right: 2%;}

.bankOffice .ac-child {border-bottom: 3px solid #676767; border-left: 3px solid #676767; border-right: 3px solid #676767;}

.ac-child {font-size: 1.6rem; font-size: min(1.333vw, 1.6rem); border-bottom: 3px solid #00995a; border-left: 3px solid #00995a; border-right: 3px solid #00995a;}
.ac-child p {display: inline-block; vertical-align: top; width: 90%; margin-left: 5%; margin-bottom: 0;}

.bankOffice .ac-parent.open{background: #676767;}
.ac-parent.open{background: #00995a; color: white;}
.ac-parent.open:before {content: ""; position: absolute; top: 50%; right: 30px; right: min( 2.5vw , 30px ); width: min( 1.25vw , 15px ); height: 2px; background: #fff; transform: translateY(-50%);}

.ac-child table{margin-top: 30px; margin-top: min( 2.5vw , 30px ); width: 90%; margin-left: 5%; border-bottom: 1px solid #8F8F8F;}
.ac-child table th{background-color: #8EDD9B; text-align: center; width: 20%; border-top: 1px solid #8F8F8F; padding: 20px 30px; box-sizing: border-box;}
.ac-child table td{width: 80%; border-top: 1px solid #8F8F8F; padding: 20px 30px; box-sizing: border-box;}
.ac-child ul li{padding-left:1em; position:relative;}
.ac-child ul li.dot:before{
	content:"・";
	position:absolute;
	left:0;
	top:0;
}

#recruit ol {list-style-type: decimal; padding-left:1em;}
#recruit ul,#recruit ol{margin-bottom: 0;}
.entBt {font-size: 1.8rem; font-size: min( 1.5vw , 1.8rem); font-weight: 300; letter-spacing: 0.15rem; }

.bankOffice .entBt {background-color: black;}

.entBt {width: 50%; height: 65px; height: min( 5.417vw , 65px); display: flex; display: -webkit-flex; justify-content: center; align-items: center; text-align: center; position: relative; background-color: #00995a; margin: 50px auto 25px auto; margin: min( 4.167vw , 50px) auto min( 2.083vw , 25px) auto;}
.entBt a { color: white;}
.entBt a:hover { color: white;}
.entBt a::before {content: ""; width: 20%; height: 1px; background: white; position: absolute; right: 20px;  right: min( 1.66vw , 20px); bottom: 20px; bottom: min( 1.66vw , 20px);}
.entBt a::after {content: ""; width: 6px; height: 6px; border-top: 1px solid white; border-right: 1px solid white; position: absolute; right: 20px; right: min( 1.66vw , 20px); bottom: 20px; bottom: min( 1.66vw , 20px); transform-origin: right center; transform:translateY(4.5px) rotate(45deg);}



.homBtnRec .homBtnView, .homBtn-L .homBtnView {position: absolute; right: 20px;  right: min( 1.66vw , 20px); bottom: 20px; bottom: min( 1.66vw , 20px);}


#faq .ac-child a{
    color: #00995A;
    text-decoration: underline;}


/*メッセージ*/
#message h3{color: #00995A; text-align: center; font-size: 3.7rem; font-size: min( 3.083vw , 3.7rem); padding: 0; margin-bottom: 20px; margin-bottom: min( 1.667vw , 20px);}
#message h4{text-align: center; font-size: 2.2rem; font-size: min( 1.833vw , 2.2rem); line-height: 4rem; line-height:min( 3.333vw , 4rem); margin-bottom: 50px; margin-bottom: min( 4.167vw , 50px); padding: 0; font-weight: 600;}
.mgText{text-align: center; font-size: 1.8rem; font-size: min( 1.5vw , 1.8rem); line-height: 5rem; line-height:min( 4.167vw , 5rem);}
.mgName{text-align: right; margin-top: 100px; margin-top: min( 8.3vw , 100px);}
.mgPhoto {width: 100%; height: 550px; height: min( 45.833vw, 550px); margin-bottom: 100px; margin-bottom: min( 8.3vw , 100px);}
.mgPhoto img {width: 100%; height: 100%; object-fit: cover; object-position: top center;}

/*募集要項・選考フロー*/
#guide table{width: 100%; border-bottom: 1px solid #8F8F8F;}
#guide table a{color: #00995A; text-decoration: underline;}
#guide table th{background-color: #8EDD9B; text-align: center; width: 20%; border-top: 1px solid #8F8F8F; padding: 20px 30px; box-sizing: border-box;}
#guide table td{width: 80%; border-top: 1px solid #8F8F8F; padding: 20px 30px; box-sizing: border-box;}
#guide ul li{padding-left:1em; position:relative;}
#guide ul li.dot:before{
	content:"・";
	position:absolute;
	left:0;
	top:0;
}
#guide ul li.kome:before{
	content:"※";
	position:absolute;
	left:0;
	top:0;
}
.ratio{display: flex; display: -webkit-flex; justify-content: flex-start; flex-wrap: wrap; position: relative;}
.ratio dl{border-left: 1px solid #8F8F8F; padding: 0 40px; padding: 0 min( 3.333vw , 40px);}
.ratio dl:first-child{padding-left: 0; border-left: none;}
.ratio dl dt{background-color: #EAEAEA; text-align: center; font-size: 2rem; font-size: min( 1.667vw , 2rem ); width: 84%; min-width: 215px; min-width: min( 17.917vw, 215px);}
.ratio dl dd{text-align: center; font-size: 5rem; font-size: min( 4.167vw , 5rem ); color: #00995a; font-weight: 900; letter-spacing: 0.1em;}
.ratio dl dd span{font-size: 2rem; font-size: min( 1.667vw , 2rem ); color: black; font-weight: 300;}
.ratio p{font-size: 1.6rem; font-size: min(1.333vw, 1.6rem); margin: 0; position: absolute; bottom: 1em; right: 0;}

.recSchedule{display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap; align-items: center;}
.recSchedule dl.recS_end {background-color: #00995a;}
.recSchedule dl{position: relative; width: 22.5%; background-color: white; box-shadow: 1px 1px 10px -3px rgba(0,0,0,0.3); text-align: center; padding: 1.5%; box-sizing: border-box; height: 210px; height: min(17.5vw , 210px);}
.stepArrow{width: 0; height: 0; border-style: solid; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 12px solid #00995a; border-right: 0;}
#comeback .stepArrow{margin: 0 30px; margin: 0 min(2.5vw , 30px);;}

.recSchedule dl.recS_end p{background: white; color: #00995a;}
.recSchedule dl p{width:20%; background: #00995a; width: min( 5vw, 60px); height: min( 5vw, 60px); border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; font-size: min( 1.167vw , 1.4rem ); line-height: min( 1.167vw , 1.4rem ); color: white; text-align: center; display: flex; display: -webkit-flex; flex-flow: column; align-items: center; justify-content: center;}
.recSchedule dl.recS_end p span{color: #00995a;}
.recSchedule dl p span{display: block; font-size: 2rem; font-size: min( 1.667vw , 2rem ); line-height: min( 2.333vw , 2.8rem ); color: white;}
.recSchedule dl dt{margin: -40px auto 20px auto; margin: min( -3.333vw , -40px) auto min( 1.667vw , 20px) auto; height: 70px; height: min(5.833vw , 70px); width: 80px; width: min( 6.667vw , 70px);}
.recSchedule dl dt img{width: 100%;}
.recSchedule dl.recS_end dd{color: white;}

/*カムバック採用*/	
.caseBox{display: flex; display: -webkit-flex; justify-content: flex-start; flex-wrap: wrap; align-items: center; margin-bottom: 50px; margin-bottom: min(4.167vw , 50px);}
.caseBox .caseBlock {width: 57%; background-color: white; box-shadow: 1px 1px 10px -3px rgba(0,0,0,0.3); display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap; align-items: center;}
.caseBox .caseBlock .caseNum{width: 345px; width: min(28.75vw , 345px); height: 190px; height: min(15.833vw , 190px); position: relative;}
.caseBox .caseBlock .caseNum img {width: 100%; height: 100%; object-fit: cover; object-position: top center;}
.caseBox .caseBlock .caseNum span {position: absolute; top: 0; left: 0; background-color: #393939; color: white; font-size: 1.4rem; font-size: min( 1.167vw , 1.4rem ); padding: 0.8em; letter-spacing: 0.09em;}
.caseBox .caseBlock p {color: #00995a; font-size: 2.2rem; font-size: min( 1.833vw , 2.2rem); text-align: center; display: block; margin: 0 auto; font-weight: 500;}
.caseBox .comebackBlok {width: 37%; background-color: #8EDD9B; box-shadow: 1px 1px 10px -3px rgba(0,0,0,0.3); display: flex; display: -webkit-flex; align-items: center; justify-content: center; flex-flow: column; height: 190px; height: min(15.833vw , 190px);}
.caseBox .comebackBlok p{color: white; background-color: #00995A; padding: 0.4em 0; width: 60%; margin: 0 auto 10px auto; margin: 0 auto min( 0.833vw , 10px ) auto; letter-spacing: 0.2em; text-align: center; font-size: 1.8rem; font-size: min( 1.5vw , 1.8rem);}
.caseBox .comebackBlok span{text-align: center; font-size: 1.8rem; font-size: min( 1.5vw , 1.8rem);}

#comeback .homFaqRec p a{color: #00995a!important;}
#comeback .homListRecruit{width: 80%; margin:120px auto; margin:min( 10vw , 120px) auto;}
#comeback .homBtnRec{height: 100px; height: min(8.333vw , 100px);}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
pcSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (min-width:768px) {
/* ----------------------------------------------------
common(pc)
---------------------------------------------------- */
/* hover */
a:hover {
  opacity: .8 !important; filter: alpha(opacity=80);
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
a img:hover {
  opacity: .8 !important; filter: alpha(opacity=80);
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
.clickable:hover {
  filter: alpha(opacity=80) !important;	opacity: .8 !important;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
.clickable:hover {
  opacity: 0.7;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}

}

@media (max-width: 1400px) {
.bgTxtVisual {font-size: min(13vw , 16rem); }
.ratio dl{padding: 0 30px; padding: 0 min( 2.143vw , 30px);}
.caseBox .caseBlock {width: 47%; }
.caseBox .caseBlock .caseNum{width: 300px; width: min(21.429vw , 300px);}
	
#employee h3{font-size: 2.8rem; font-size: min(2.2vw, 2.8rem); line-height: 4.7rem; line-height: min(3.75vw, 4.7rem);}
/*.parsonClum p, .parsonLastBox p{line-height: 3.6rem; line-height: min(2.9vw, 3.6rem);}*/
	
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
tabletSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (max-width: 1200px) and (min-width: 768px) {
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
spSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (max-width: 767px) {
	#mainContainer{ width: 100%; position: relative; padding-top: min(14vw, 60px); }
	#home #mainContainer {padding-top: 0;}
	.mgTop120{margin-top:min( 15.645vw , 120px);}
	.mgBottom120{margin-bottom:min( 15.645vw , 120px);}
  
	#comeback .homListRecruit{width: 100%; margin:min( 15.645vw , 120px) auto;}
	
/* ----------------------------------------------------
header(sp)
---------------------------------------------------- */
#header  {position: fixed; height: min(14vw, 60px); padding: 0 0 0 3vw; z-index: 100; background: #fff;}
#home #header {background:inherit;}
#header #hd-logo {font-size: min(3vw, 1.8rem); }
#header #hd-logo img {width: auto; height: min(2.8vw, 14px); }
#header #hd-logo span {padding-left: min( 2vw, 14px); margin-left: min( 2vw, 14px); }
#header #hd-logo span::before { height: min(3vw, 20px); }
#btnGlobal {height:min(14vw, 60px); width: min(14vw, 60px);}
#btnGlobal .btnWrapGlobal { width: min( 6vw , 30px); height:min(4vw,20px ); }

#grandMenu {padding: min(18vw, 100px) 5%;}
#grandMenu #navGlobal li { font-size: min(4.2vw , 20px);}
#grandMenu #navGlobal li a {padding: min(4vw,30px) 0; }
#grandMenu #navGlobal li a::after { right: min(2.5vw,15px);width: min(2.5vw,15px); height: min(2.5vw,15px);}
#grandMenu #navGlobal li.btn-navChild .navChild  li {font-size: min(3.8vw, 18px); margin-bottom: min( 2vw, 10px);}
#grandMenu #navGlobal li.btn-navChild .navChild a {padding: min(4vw, 20px); }
#grandMenu #navGlobal li.btn-navChild .navChild a::after {width: min(2.4vw,12px); height: min(2.4vw,12px);}

#hdEntry {right:min(14vw, 60px); width: min(20vw, 200px); height: min(14vw, 60px); }
#hdEntry a {font-size: min(3.6vw, 20px); letter-spacing: 0.1rem;}

/* ----------------------------------------------------
footer (sp)
---------------------------------------------------- */
#navLocal ul {margin-bottom: min( 10vw , 50px);}
#navLocal ul li a .navTxtLocal { right: min(5vw, 40px); bottom: min(5vw, 40px); font-size: min(3vw, 1.5rem); }
#navLocal ul li a .navTxtLocal span {padding-bottom: min(1vw, 5px);}
#navLocal ul li a .navTxtLocal span::before {width: calc( 100% + min(2vw,15px));}
#navLocal ul li a .navTxtLocal span::after{width: min(1.5vw, 7px); height: min(1.5vw, 6px); transform: translate(min(2vw, 15px) , 50%)rotate(45deg);}

#footer {padding: min( 4vw, 30px);  min-height: min(25vw,160px); display: block;}
#footer p {text-align: center; font-size: min(3.2vw , 1.5rem); z-index: 6;}
#footer p:first-child {margin-bottom: min( 4vw, 10px);}
#footer .ft-logo img {width: auto; height: min(4vw, 20px); }

#pagetop {right: 3%;}
	
#pagetop a {width: 30px; height: 30px;}


/* ----------------------------------------------------
home(sp)
---------------------------------------------------- */
#homContent {margin-bottom: min( 20vw , 100px);}
.homTxtVisual  {padding-top: min(10vw, 40px); }
.homTxtVisual h2 { font-size: min(6vw , 8.5rem);margin-bottom: min( 2vw, 40px);}
.homTxtVisual p {line-height: 1;}
.homTxtVisual p img {width: min( 40vw , 400px); }

.homBtnView {font-size: min( 3.8vw , 1.6rem); letter-spacing: 1vw;}
.homBtnView a {padding: 0 min( 2vw , 10px) min( 1vw , 5px) 0;}

#homMessage {margin: min( 10vw , 70px) 0 min( 15vw , 100px); }
.homTxtMsg {width: 100%; margin-bottom: min( 7vw, 50px);}
.homImgMsg{width:100%; height: 60vw;}
.homImgMsg img {width: 100%; height: 100%; object-fit: cover; object-position: center top;}
.homTxtMsg h2 { font-size: min(5vw , 2.8rem);  margin-bottom: min( 5vw, 35px);}
.homReadMsg {margin-bottom: min( 4vw , 30px); font-size: min( 3.8vw , 1.6rem); line-height:1.8;}
.homSubMsg { font-size: min( 5vw , 2rem);left: min(2vw, 10px); top: inherit; transform: translateY(0); bottom: 0;} 

#homEmployee {padding-top: 0;}
#homEmployee h2 {font-size: min(13vw , 15.7rem); transform:0; position: relative;}
.homBlockEmp{margin-bottom: min( 15vw, 115px); }
.homBlockEmp::before {height:100%; bottom: max( -6vw , -50px);}

.homBlockEmp .homInrContent { min-height: min(50vw, 300px); height: auto; justify-content: space-between;}
.homImgEmp {bottom:0;  height: 100%;}
.homBlockEmp--R .homImgEmp {left:-3vw;}
.homBlockEmp--L .homImgEmp {right:-3vw;}
.homTxtEmp {width: 60%; }
.homBlockEmp--R .homTxtEmp {margin-left: 40%;}
.homTxtEmp h3 {font-size: min(4vw , 2.2rem); margin-bottom: min(3vw, 40px);}
.homTxtEmp h3 br {display: none;}
.homInfoEmp .homNameEmp {font-size: min(3.8vw, 2rem);}
.homInfoEmp .homNameEmp span {font-size: min(3.4vw, 1.6rem);margin-left: min(2vw, 10px);}
.homInfoEmp .homDataEmp {font-size: min(3.4vw, 1.6rem); line-height: 1.6;}
.homInfoEmp .homBtnView {bottom: inherit; }

#homRecruit {margin: min(15vw , 240px) auto  min(10vw , 165px) ;}
.homMainRecruit {padding-bottom: min(6vw, 50px); margin-bottom: min( 3vw , 40px);}
.homMainRecruit h2 {font-size: min(5vw , 2.6rem); margin: min(5vw , 60px) 0 min(4vw, 40px); }
.homMainRecruit p {line-height: 1.6; }
.homMainRecruit::before {width: min(25vw , 160px); transform: translateX(10%) rotate(-40deg)}

.homBtnRec{ height: min(22.164vw , 170px); width: 49%;}
#comeback .homBtnRec{height: min(22.164vw , 170px); }	
	
.homBtn-L { height: min(24vw , 220px); width: 49%;}
.homBtnRec h3, .homBtn-L h3 { font-size: min(3.8vw , 2rem);  letter-spacing: inherit; line-height: min(5.4vw , 3rem);}

.homBtnRec .homBtnView, .homBtn-L .homBtnView {right: min( 3vw , 20px); bottom: min( 3vw , 20px); font-size: min( 3vw , 1.4rem); letter-spacing: inherit;}
.homBtn-L {margin-bottom: min(3vw , 50px); height: min(20vw , 145px); width: 100%; }

#homRegional{padding-top: min(15vw, 180px);}
#homRegional::before {height: calc( 100% - min( 12vw , 70px)); }
#homRegional .homInrContent  h2 { font-size: min( 6vw , 6.9rem); letter-spacing: min(2.5vw , 2rem);  margin-bottom: min(4vw , 40px);}
.homBtnEntry {height: min(28vw , 200px); }
.homBtnEntry h3 {font-size: min(5.4vw , 3rem); letter-spacing: min(1.5vw , 2rem); }
.homBtnEntry .homBtnView {right: min( 3vw , 20px); bottom: min( 3vw , 20px); font-size: min( 3vw , 1.4rem); letter-spacing: inherit;}


/* ----------------------------------------------------
underlayer > sp(sp)
---------------------------------------------------- */
.visual {margin-bottom: min(6vw , 50px);}
.txtVisual {height: min(24vw , 200px); }
.txtVisual .ttlVisual h2 {font-size: min(5.2vw, 3.8rem);  line-height: 1.5}
.txtVisual .ttlVisual p {font-size: min(3.8vw, 2rem); }
.bgTxtVisual {bottom: max(-1vw , -15px);  font-size: min(12vw , 18rem); }
.bgImgVisual {height: min(24vw, 280px); }

.contCategoryMenu{font-size: min( 3.2vw , 1.6rem); line-height: min( 3.2vw , 1.6rem); margin-bottom: min( 8vw, 40px)!important;}
.contCategoryMenu li{padding: min( 3vw , 15px ); margin-bottom: min(3vw , 15px);}
.contCategoryMenu .ccmTitle{width: 100%; height: min( 15.645vw , 120px);}
.contCategoryMenu .ccmBt,#faq .contCategoryMenu .ccmBt{width: 48%; height: min( 15.645vw , 120px);}
.contCategoryMenu .ccmBt p span{font-size: min(3vw , 1.5rem);}
.catBox{margin-bottom: min( 14vw, 70px);}
.catBox h3{padding: 0 min( 6vw, 30px);}
.catBox h3 span{font-size: min(4vw , 2rem); letter-spacing: 0.08em;}
.grTitle{font-size: min(4.4vw , 2.2rem); padding-left: 0.8em; margin-bottom: min( 5.215vw , 40px);}

/* ----------------------------------------------------
underlayer > employee(sp)
---------------------------------------------------- */
.empVisual {margin-bottom: min(6vw, 50px);}
.empInrVisual {height: auto;}
.empImgPerson {position: relative; left: inherit; top: inherit; transform: none; text-align: center;height: min( 60vw, 710px); }
.empBgPerson {max-height: min( 50vw , 600px); bottom: inherit; top: min( 10vw , 55px );}
.empNumVis {font-size: min(3vw , 2rem); letter-spacing: 0.4rem; top: min(4vw , 20px); transform: translateY(0);}
.empNumVis span {font-size: min(7vw, 6rem); }
.empInfoVis {right: inherit; left: inherit; position: relative; text-align: center;}
.empInfoVis p {font-size: min(3vw, 1.4vw);}
.empInfoVis .empNameInfoVis {font-size: min(5vw, 2.6rem); line-height: 1.5; margin-bottom: min(1vw, 5px);}
.empInfoVis .empNameInfoVis span {font-size: min(3vw, 1.8rem); margin-left:0; }
.empInfoVis ul {text-align: center;}
.empInfoVis ul li {display: inline-block; margin: 0 1vw; font-size: min(3vw, 1.4vw);}
	
	
#employee h2{font-size: min(4.6vw, 2.4rem); margin-bottom: min(3.911vw, 30px);}
/*.parsonLinnerPhoto01{height: min( 71.708vw, 550px); margin-bottom: min( 14.342vw , 110px );}*/
.parsonClum{width: 88%; margin: 0 auto; flex-flow: column;}
#employee h3{font-size: min(4vw, 2.0rem); line-height: min(5.6vw, 2.8rem); margin-bottom: min( 3.911vw , 30px );}
.parsonClum p, .parsonLastBox p{font-size: min(3.2vw, 1.6rem); line-height: min(5.883vw, 4.9rem);}
.prsBox01{width: 100%;}
.prsBox02{width: 100%; margin-top: 10vw;}
#person02Aria .prsBox02{margin-top: 10vw;}
#person03Aria .prsBox02{margin-top: 10vw;}	
	
.parC_PhotoRight{position: relative; top: inherit; right: inherit; width: 100%; margin: min( 3.911vw , 30px ) 0 min( 3vw , 15px ) 0;}
.parC_PhotoLeft{position: relative; bottom: inherit; left: inherit; width: 100%; margin: min( 3.911vw , 30px ) 0 min( 3vw , 15px ) 0;}
.parC_PhotoRight img,.parC_PhotoLeft img{object-fit: cover; width: 100%; height: 100%;}

#person01Aria .parC_PhotoRight img{object-position: left 70% top 0%;}
#person01Aria .parC_PhotoLeft img{object-position: left 10% top 0%;}

/*.parsonLastBox{padding-top: 450px; padding-top: min( 37.5vw , 450px ); margin-top: 110px; margin-top: min( 9.167vw , 110px ); position: relative;}
.parLastPhoto{width: 100%; height: 770px; height: min( 64.167vw , 770px ); position: absolute; top: 0; left: 0;}*/
.parsonLastBox .parWhiteBox{width: 88%;}
.parsonLastBox .parWhiteBox .prw_inner{width: 80.4%; padding: min( 8.333vw , 100px ) 0;}	
	
	
/* faq */
.ac_faq {margin-top: min( 6vw , 30px );}
.ac_faq:last-child {margin-bottom: min( 22.816vw , 170px);}
.ac-parent {padding: min( 4vw , 20px );}
.ac-parent::before {right: min( 6vw , 30px ); width: min( 3vw , 15px );}
.ac-parent::after {right: min( 7.4vw , 37px ); width: 1px; height: min( 3vw , 15px );}
.ac-child {padding: min( 4vw , 20px ) 0;}
/*アコーディオン文字設定*/
.ac-parent p{font-size: min( 3.6vw , 1.8rem ); line-height: min( 6vw , 3rem ); width: 85%;}
.ac-parent span{font-size: min( 4.4vw , 2.2rem ); line-height: min( 6vw , 3rem ); width: 4%;}
.ac-child {font-size: min(3.2vw, 1.6rem);}
/*.ac-child p {margin-left: 9%;}*/

.ac-parent.open:before {right: min( 6vw , 30px ); width: min( 3vw , 15px );}	
	
.ac-child table{margin-top: min( 6vw , 30px ); /*margin-left: 9%;*/}
.ac-child table th{width: 100%; padding: min( 4vw , 20px ); display: block;}
.ac-child table td{width: 100%; padding: min( 4vw , 20px ); display: block;}
	
.entBt {font-size: min( 3.6vw , 1.8rem);}
.entBt {height: min( 10.43vw , 80px); margin: min( 4.167vw , 50px) auto min( 2.083vw , 25px) auto; width: 70%;}

	
/*メッセージ*/
#message h3{font-size: min( 5.6vw , 2.8rem); margin-bottom: min( 4vw , 20px);}
#message h4{font-size: min( 4vw , 2rem); line-height:min( 8vw , 4rem); margin-bottom: min( 6vw , 30px);}
.mgText{font-size: min( 3.6vw , 1.8rem); line-height:min( 8vw , 4rem); text-align: left; letter-spacing: -0.05rem;}
.mgName{margin-top: min( 8.3vw , 100px); width: 50%; margin-left: 50%;}
.mgPhoto {height: min( 45.833vw, 550px); margin-bottom: min( 22.816vw , 170px);}

	
/*募集要項・選考フロー*/
#guide table th{width: 100%; padding: min( 3vw , 15px ); display: block;}
#guide table td{width: 100%; padding: min( 3vw , 15px ); display: block;}

.ratio{display: flex; display: -webkit-flex; justify-content: flex-start; flex-wrap: wrap; position: relative;}
.ratio dl{width: 33.3%;}
.ratio dl dt{font-size: min(4vw , 2rem); width: 100%;}
.ratio dl dd{font-size: min( 7vw , 5rem );}
.ratio dl dd span{font-size: min(3vw , 2rem);}
.ratio p{font-size: min( 3.2vw , 1.6rem); margin: min( 3vw , 15px ) 0 0 0; position: relative; bottom: 0; left: 0;}
.recSchedule dl.recS_end {margin-bottom: min( 9.778vw , 70px);}
	
.recSchedule{justify-content: center;}
.recSchedule dl{width: 100%; padding: 5%; height: inherit;}
.recSchedule dl p{width:50%; width: min( 12vw, 60px); height: min( 12vw, 60px); font-size: min( 2.8vw , 1.4rem ); line-height: min( 2.8vw , 1.4rem ); margin: 0 auto;}
.recSchedule dl p span{font-size: min(4vw , 2rem); line-height: min( 5.6vw , 2.8rem );}
.recSchedule dl dt{margin: min( 2.608vw , 20px) auto; height: min(9.126vw , 70px); width: min( 9.126vw , 70px);}
	
.stepArrow{width: 0; height: 0; border-style: solid;  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 17px solid #00995a;
  border-bottom: 0; margin:min( 3vw , 15px ) 0; text-align: center; display: block;}
#comeback .stepArrow{margin:min( 3vw , 15px ) 0;}

	
/*カムバック採用*/	
.caseBox{flex-flow: column; margin-bottom: min( 13.038vw , 100px);}
.caseBox:last-child{margin-bottom: min( 22.816vw , 170px);}
.caseBox .caseBlock {width: 100%; }
.caseBox .caseBlock .caseNum{width: 50%; height: min(28.683vw , 220px);}
.caseBox .caseBlock .caseNum span {font-size: min( 2.8vw , 1.4rem );}
.caseBox .caseBlock p {font-size: min( 3.6vw , 1.8rem);}
.caseBox .comebackBlok {width: 100%; height: min(28.683vw , 220px);}
.caseBox .comebackBlok p{margin: 0 auto min( 1.304vw , 10px ) auto; font-size: min( 3.6vw , 1.8rem); padding: 0.2em 0; }
.caseBox .comebackBlok span{font-size: min( 3.6vw , 1.8rem);}
}





