@charset "utf-8";

/* CSS Document */
/*----------------------------------------


main/fv


----------------------------------------*/
main {
  position: relative;
  width: 100%;
  margin-bottom: 70px;
}

main .bg {
  position: absolute;
  content: "";
  width: 100%;
  left: 0;
  top: 0;
  height: 590px;
  overflow: hidden;
}

main .bg::before {
  position: absolute;
  content: "";
  width: 105%;
  height: 105%;
  left: -2.5%;
  top: -2.5%;
  transition: 2.8s;
}

.load main .bg::before {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.fv {
  height: 400px;
}

.fv .inner {
  height: 100%;
}

.fv h1 {
  position: absolute;
  bottom: 50px;
}

.fv h1 span {
  display: block;
  font-size: 2.6rem;
  font-size: clamp(2.0rem, 2.0vw, 2.6rem);
  margin-top: 20px;
}

/*----------------------------------------


article


----------------------------------------*/
article {
  position: relative;
  box-sizing: border-box;
  padding-top: 100px;
  padding-top: min(100px, 10vw);
}

article .title_area {
  padding-top: 35px;
  padding-top: min(35px, 3.5vw);
}

article.bg_l .title_area {
  margin-right: calc(10% + 270px);
}

/*----------------------------------------


entry_area


----------------------------------------*/
.entry article {
  padding-top: 0;
}

.entry .bg::before {
  background: url("../../entry/new-graduate/images/fv_bg.jpg") no-repeat center top / cover;
}

.entry_area.shinsotsu_buttons h3 {
  position: relative;
  padding-bottom: 50px;
  margin-bottom: 35px;
  text-align: center;
}

/* .entry_area.shinsotsu_buttons ul li:nth-child(2n){
  padding-top: min(20vw, 140px);
} */

.entry_area.shinsotsu_buttons p {
  margin-bottom: min(10vw, 75px);
}
.entry_area.shinsotsu_buttons ul {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-content: center;
  align-items: center;
}
.entry_area.shinsotsu_buttons ul p {
  margin-bottom: min(6vw, 70px);
}

.entry_area.shinsotsu_buttons ul li > p:last-child {
  margin-bottom: 0;
}

.entry_area.shinsotsu_buttons h3::before {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid #149f3a;
}

.entry_area.shinsotsu_buttons p .recruit-year {
  display: block;
  text-align: left;
  margin-bottom: 15px;
}

.entry_area .bnr {
  display: block;
  max-width: 403px;
  width: min(33vw, 403px);
}

.entry_area p.txt a {
  margin: 0 15px;
}

/*----------------------------------------


job


----------------------------------------*/

.job {
  line-height: 2;
}

.job .flow {
  overflow: hidden;
}

/*----------------------------------------


job new-graduate


----------------------------------------*/


.job-new-graduate .bg::before {
  background: url("../../entry/new-graduate/images/fv_bg.jpg") no-repeat center top / cover;
}

.job-new-graduate .fv h1 {
  width: min(calc((790/1280)*100vw), 790px);
}

.job-new-graduate .fv h1 span {
  width: min(calc((285/1280)*100vw), 285px);
}

.job-new-graduate .job_area h2 {
  /* width: 414px; */
  /* width: min(11.5vw, 115px); */
  width: min(16vw, 220px);
  margin: 0 auto 90px;
  margin: 0 auto min(8vw, 120px);
}

.job-new-graduate .job_area .job_nav {
  position: relative;
}

.job-new-graduate .job_area .job_nav::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  border-bottom: 1px solid #149f3a;
  width: calc(100% - 85px);
}

.job-new-graduate .job_area .job_nav .tab_group {
  display: flex;
  max-width: 1030px;
  margin: 0 auto;
}

.job-new-graduate .job_area .job_nav .tab_group li {
  width: 25%;
  cursor: pointer;
  padding: 30px min(1vw,20px);
  box-sizing: border-box;
  transition: 0.5s;
  line-height: 1.4;
}

.job-new-graduate .job_area .job_nav .tab_group li.tab_active,
.job-new-graduate .job_area .job_nav .tab_group li:hover {
  background: #149f3a;
  color: #fff;
}

.job-new-graduate .job_area .job_list_area,
.job-new-graduate .flow_area .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
}

.job-new-graduate .flow_area .inner {
  padding: min(8vw, 125px) 0 min(8vw, 145px);
}

.job-new-graduate .job_area .job_list_area dl {
  position: relative;
  padding: 60px 0;
  padding: min(4vw, 60px);
  display: flex;
  border-bottom: 1px solid #efefe0;
  margin-bottom: 0;
}

.job-new-graduate .job_area .job_list_area dl::before {
  position: absolute;
  left: 0;
  bottom: -1px;
  content: "";
  border-bottom: 1px solid #d7d7b2;
  max-width: 160px;
  width: 16%;
}

.job-new-graduate .job_area .job_list_area dt {
  max-width: 190px;
  width: 19%;
  margin-bottom: 0;
}

.job-new-graduate .job_area .job_list_area dd {
  width: calc(100% - 19%);
  box-sizing: border-box;
  margin-bottom: 0;
}

.job-new-graduate .job_area .job_list_area dd p {
  margin-bottom: 0;
}

.job-new-graduate .job_area .job_list_area dd p .aside {
  font-size: 0.85em;
}

.job-new-graduate .job_area .job_list_area dt h3 {
  font-size: 1.8rem;
  font-size: clamp(1.6rem, 1.8vw, 1.8rem);
  margin-bottom: 0;
  line-height: 1.7;
  letter-spacing: 0;
}

.job-new-graduate .job_area .job_list_area dt h3 {
  font-size: 1.8rem;
  font-size: clamp(1.6rem, 1.8vw, 1.8rem);
  margin-bottom: 0;
  line-height: 1.7;
  letter-spacing: 0;
}

.job-new-graduate .job_area .job_list_area .aside_txt {
  margin-top: min(4vw, 60px);
  display: block;
  margin-bottom: 0;
}

.job-new-graduate .flow article {
  padding-top: 0;
}

.job-new-graduate article.bg_r::before {
  width: calc(100vw - 85px);
}

.job-new-graduate .flow h2 {
  width: 145px;
  transform: translateX(0);
  width: min(14.5vw, 145px);
  margin: 150px auto 120px;
  margin: min(10vw, 150px) auto min(4vw, 70px);
  transition: all 2.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.job-new-graduate .flow_area h3.step_title {
  margin: 0 auto 70px;
  margin: 0 auto min(4vw, 70px);
  padding-bottom: 50px;
  padding-bottom: min(3vw, 50px);
  border-bottom: 1px solid #149f3a;
}

.job-new-graduate .flow_area h3.step_title img {
  display: block;
  width: 492px;
  width: min(49vw, 492px);
  margin: 0 auto;
}

.job-new-graduate .flow .flow_next_step {
  margin-bottom: 190px;
}

.job-new-graduate .flow .flow_next_step::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  bottom: -120px;
  width: 0;
  height: 0;
  border-left: 50px solid transparent;
  border-right: 50px solid transparent;
  border-top: 50px solid #149f3a;
  transition: all 2.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.job-new-graduate .flow .flow_next_step-last::after {
  display: none;
}

.job-new-graduate .flow .flow_next_step-last {
  margin-bottom: 100px;
}

/*----------------------------------------


job career


----------------------------------------*/

.job-career .job_area {
  padding: 0 min(4vw, 60px);
}

.job-career .job_area h2 {
  width: 414px;
  width: min(11.5vw, 115px);
  margin: 0 auto 90px;
  margin: 0 auto min(8vw, 120px);
}

.job-career .job_area .job_nav {
  position: relative;
}

.job-career .job_area .job_list_area .aside_txt {
  margin-top: min(4vw, 60px);
  display: block;
  margin-bottom: 0;
}

.job-career .flow article {
  padding-top: 0;
}

.job-career .flow h2 {
  width: 145px;
  transform: translateX(0);
  width: min(14.5vw, 145px);
  margin: 150px auto 120px;
  margin: min(10vw, 150px) auto min(4vw, 70px);
  transition: all 2.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.job-career .flow_area h3.step_title {
  margin: 0 auto 70px;
  margin: 0 auto min(4vw, 70px);
  padding-bottom: 50px;
  padding-bottom: min(3vw, 50px);
  border-bottom: 1px solid #149f3a;
}

.job-career .flow_area h3.step_title img {
  display: block;
  width: 492px;
  width: min(49vw, 492px);
  margin: 0 auto;
}

.job-career .job_area .job_list_area {
  padding: 0 0 min(9vw, 130px);
}

.job-career .job_area .job_list_area dl {
  position: relative;
  padding: 60px 0;
  padding: 0 0 min(14vw, 170px);
  display: flex;
  flex-flow: row;
  justify-content: center;
  margin-bottom: 0;
}

.job-career .job_area .job_list_area dl:last-child {
  padding-bottom: 0;
}

.career .job_area .job_list_area dd {
  max-width: calc(100% - 190px);
  width: calc(100% - 19%);
  padding-right: 70px;
  padding-right: min(5vw, 70px);
  box-sizing: border-box;
  margin-bottom: 0;
}


.job-career .bg::before {
  background: url("../../entry/career/images/fv_bg.jpg") no-repeat center top / cover;
}

.job-career .fv h1 {
  width: min(calc((780/1280)*100vw), 780px);
}

.job-career .fv h1 span {
  width: min(calc((305/1280)*100vw), 305px);
}

.job-career .job_area .job_nav .tab_group {
  display: flex;
  max-width: 1040px;
  margin: 0 auto min(11vw, 150px);
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.job-career .job_area .job_nav .tab_group li {
  width: min(16vw, 160px);
  padding: 0;
  box-sizing: border-box;
  transition: 1s;
  line-height: 1.4;
  flex: unset;
}

.job-career .job_area .job_nav .tab_group li:hover a {
  color: #38a549;
}

.job-career .job_area .job_nav ul li:hover::before {
  border-bottom: 1px solid #38a549;
}

.job-career .job_area .job_nav .tab_group li:hover::after {
  background-color: #f8d300;
  animation: bounce 2s ease infinite;
}

.job-career .job_area .job_nav .tab_group li a {
  display: block;
  padding: 0 0 10px;
}

.job-career .job_area .job_nav ul li {
  position: relative;
  padding: 0 5px;
  width: auto;
  flex: 1;
}

.job-career .job_area .job_nav ul li::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  border-bottom: 1px solid #38a549;
  width: 100%;
}

.job-career .job_area .job_nav .tab_group li::after {
  position: absolute;
  right: 0;
  bottom: 0;
  content: "";
  width: 100%;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  transform: translateX(-60%) translateY(-90%);
  background: #f89c00;
  width: 11px;
  height: 16px;
}

.job-career .flow_area .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
  padding: min(8vw, 125px) 0 min(8vw, 145px);
}

.job-career .job_area .job_list_area dd {
  padding-right: 0;
  width: min(88vw, 920px);
}

.job-career .job_area .job_list_area dd figure {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-between;
  margin: 0;
}

.job-career .job_area .job_list_area dd .job-figure-img {
  /* width: min(46vw, 465px); */
  width: min(36vw, 465px);
}

.job-career .job_area .job_list_area dd figure figcaption {
  width: min(36vw, 425px);
}

.job-career .job_area .job_list_area dd figure figcaption a {
  width: min(70%, 300px);
  margin: min(6vw, 40px) auto 0;
  background-color: #38a549;
  display: block;
  overflow: hidden;
}

.job-career .job_area .job_list_area dd figure figcaption a:hover {
  background-color: #90b03a;
}

.job-career .job_area .job_list_area dd figure figcaption a span {
  width: min(10vw, 90px);
  display: block;
  margin: min(2vw, 20px) auto;
}

.job-career .job_area .job_list_area dt {
  width: min(6vw, 65px);
  margin-bottom: 0px;
  margin-right: min(3vw, 35px);
  padding: 0 min(2vw, 20px);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  border-top: 1px solid #cdcda8;
  align-items: flex-start;
}

.job-career .job_area .job_list_area dt span {
  width: min(3vw, 25px);
  display: flex;
  padding: min(3vw, 35px) 0 0;
}

.job-career .job_area .job_list_area dt img {
  width: 100%;
}

.job-career .flow .flow_next_step {
  margin-bottom: 190px;
}

.job-career .flow .flow_next_step::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  bottom: -120px;
  width: 0;
  height: 0;
  border-left: 50px solid transparent;
  border-right: 50px solid transparent;
  border-top: 50px solid #149f3a;
}

.job-career .flow .flow_next_step-last::after {
  display: none;
}

.job-career .flow .flow_next_step-last {
  margin-bottom: 100px;
}

.entry_area p.txt-top {
  margin-bottom: min(6vw, 70px);
  margin-top: 0;
}

.entry_area p.txt-bot {
  margin-top: min(6vw, 70px);
  margin-bottom: 0;
}


/*----------------------------------------


job part-time


----------------------------------------*/


main .map-svg {
  width: min(70vw, 675px);
  margin: 0 auto;
  background: #fff;
}

.job-part-time .job_area {
  padding: 0 min(4vw, 60px);
}

.job-part-time .map-inner {
  padding: min(17vw, 170px) 0 min(12vw, 150px);
  width: calc(100% - 85px);
  margin: 0 0 0 auto;
}


.job-part-time .job_area h2 {
  width: 414px;
  width: min(11.5vw, 115px);
  margin: 0 auto 90px;
  margin: 0 auto min(8vw, 120px);
}

.job-part-time .job_area .job_nav {
  position: relative;
}

.job-part-time .job_area .job_list_area .aside_txt {
  margin-top: min(4vw, 60px);
  display: block;
  margin-bottom: 0;
}

.job-part-time .flow article {
  padding-top: 0;
  z-index: 1;
  position: relative;
}

.job-part-time .flow h2 {
  width: 145px;
  transform: translateX(0);
  width: min(14.5vw, 145px);
  margin: 150px auto 120px;
  margin: min(10vw, 150px) auto min(4vw, 70px);
  transition: all 2.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.job-part-time .flow h2.flow-map-title {
  transform: translateX(0);
  width: min(23vw, 231px);
  margin: 150px auto 120px;
  margin: min(10vw, 150px) auto min(4vw, 70px);
  transition: all 2.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.job-part-time .flow_area h3.step_title {
  margin: 0 auto 70px;
  margin: 0 auto min(4vw, 70px);
  padding-bottom: 50px;
  padding-bottom: min(3vw, 50px);
  border-bottom: 1px solid #149f3a;
}

.job-part-time .flow_area h3.step_title img {
  display: block;
  width: 492px;
  width: min(49vw, 492px);
  margin: 0 auto;
}

.job-part-time .job_area .job_list_area {
  padding: 0 0 min(9vw, 130px);
}

.job-part-time .job_area .job_list_area dl {
  position: relative;
  padding: 60px 0;
  padding: 0 0 min(14vw, 170px);
  display: flex;
  flex-flow: row;
  justify-content: center;
  margin-bottom: 0;
}

.job-part-time .job_area .job_list_area dl:last-child {
  padding-bottom: 0;
}

.part-time .job_area .job_list_area dd {
  max-width: calc(100% - 190px);
  width: calc(100% - 19%);
  padding-right: 70px;
  padding-right: min(5vw, 70px);
  box-sizing: border-box;
  margin-bottom: 0;
}


.job-part-time .bg::before {
  background: url("../../entry/part-time/images/fv_bg.jpg") no-repeat center top / cover;
}

.job-part-time .fv h1 {
  width: min(calc((780/1280)*100vw), 780px);
}

.job-part-time .fv h1 span {
  width: min(calc((305/750)*100vw), 305px);
}

.job-part-time .job_area .job_nav .tab_group {
  display: flex;
  max-width: 750px;
  margin: 0 auto min(11vw, 150px);
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

.job-part-time .job_area .job_nav .tab_group li {
  width: min(16vw, 155px);
  padding: 0;
  box-sizing: border-box;
  transition: 1s;
  line-height: 1.4;
  flex: unset;
  margin-right: 3.5%;
  margin-bottom: min(5vw, 60px);
}

.job-part-time .job_area .job_nav .tab_group li:nth-child(4),
.job-part-time .job_area .job_nav .tab_group li:last-child {
  margin-right: 0;
}

.job-part-time .job_area .job_nav .tab_group li:nth-child(5),
.job-part-time .job_area .job_nav .tab_group li:nth-child(6),
.job-part-time .job_area .job_nav .tab_group li:nth-child(7) {
  margin-bottom: 0;
}

.job-part-time .job_area .job_nav .tab_group li:hover a {
  color: #38a549;
}

.job-part-time .job_area .job_nav ul li:hover::before {
  border-bottom: 1px solid #38a549;
}

.job-part-time .job_area .job_nav .tab_group li:hover::after {
  background-color: #f8d300;
  animation: bounce-part 2s ease infinite;
}

.job-part-time .job_area .job_nav .tab_group li a {
  display: block;
  padding: 0 0 10px;
}

.job-part-time .job_area .job_nav ul li {
  position: relative;
  padding: 0 5px;
  width: auto;
  flex: 1;
}

.job-part-time .job_area .job_nav ul li::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  border-bottom: 1px solid #38a549;
  width: 100%;
}

.job-part-time .job_area .job_nav .tab_group li::after {
  position: absolute;
  right: 0;
  bottom: 0;
  content: "";
  width: 100%;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  transform: translateX(-60%) translateY(-90%);
  background: #f89c00;
  width: 11px;
  height: 16px;
}

.job-part-time .flow_area .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
  padding: min(8vw, 125px) 0 min(8vw, 145px);
}

.job-part-time .job_area .job_list_area dd {
  padding-right: 0;
  width: min(88vw, 920px);
}

.job-part-time .job_area .job_list_area dd figure {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-between;
  margin: 0;
}

.job-part-time .job_area .job_list_area dd .job-figure-img {
  width: min(36vw, 465px);
}

.job-part-time .job_area .job_list_area dd figure figcaption {
  width: min(36vw, 425px);
}

.job-part-time .job_area .job_list_area dd figure figcaption a {
  width: min(70%, 300px);
  margin: min(6vw, 40px) auto 0;
  background-color: #38a549;
  display: block;
  overflow: hidden;
}

.job-part-time .job_area .job_list_area dd figure figcaption a:hover {
  background-color: #90b03a;
}

.job-part-time .job_area .job_list_area dd figure figcaption a span {
  width: min(10vw, 90px);
  display: block;
  margin: min(2vw, 20px) auto;
}

.job-part-time .job_area .job_list_area dt {
  width: min(6vw, 65px);
  margin-bottom: 0px;
  margin-right: min(3vw, 35px);
  padding: 0 min(2vw, 20px);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  border-top: 1px solid #cdcda8;
  align-items: flex-start;
}

.job-part-time .job_area .job_list_area dt span {
  width: min(3vw, 25px);
  display: flex;
  padding: min(3vw, 35px) 0 0;
}

.job-part-time .job_area .job_list_area dt img {
  width: 100%;
}

.job-part-time .flow .flow_next_step {
  margin-bottom: 190px;
}

.job-part-time .flow .flow_next_step::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  bottom: -120px;
  width: 0;
  height: 0;
  border-left: 50px solid transparent;
  border-right: 50px solid transparent;
  border-top: 50px solid #149f3a;
}

.job-part-time .flow .flow_next_step-last::after {
  display: none;
}

.job-part-time .flow .flow_next_step-last {
  margin-bottom: 100px;
}

.job-part-time-location {

}

.job-part-time-location .bg_r {
  padding-top: min(170px, 17vw);
}

.job-part-time article.bg_r::before {
  z-index: -1;
}

.job-part-time article.foot_nav_ar::before {
  z-index: 1;
}

.job-part-time-location .inner {
  padding: 0 0 min(12vw, 150px);
}

.job-part-time .map-svg {
  padding: 0 0 min(15vw, 170px);
}

.map-svg-note-p {
  padding-bottom: min(50px, 4vw);
}

.map-svg-note {
  display: flex;
  flex-direction: column;
  list-style: none;
  font-size: 80%;
  padding-bottom: min(100px, 10vw);
}

.map-svg-note li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 5px;
}

.map-svg-note li:last-child {
  margin-bottom: 0;
}

.map-svg-note li:before {
  content: '※';
  position: absolute;
  top: 0;
  left: 0;
}

.job-part-time-location-info {
  width: min(75vw, 850px);
  margin: 0 auto;
}

.job-part-time-location-info ul {
  list-style: none;
}

.job-part-time-location-list {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
}

.job-part-time-location-list h3 {
  width: 170px;
  margin: 0;
}

.job-part-time-location-list ul {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  margin-bottom: min(8.5vw, 85px);
}

.job-part-time-location-list li:last-child ul {
  margin-bottom: 0;
}

.job-part-time-location-list ul li {
  margin-top: min(3.5vw, 35px);
  width: 180px;
  height: 50px;
  margin-right: 5%;
  text-align: center;
  color: #000;
  font-size: 16px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #000;
  transition: all 1s;
}

.job-part-time-location-list ul li::before {
  position: absolute;
  content: '';
  background-color: #000;
  background-image: url('/entry/part-time/images/new-tab-icon.png');
  background-repeat: no-repeat;
  background-size: cover;
  width: 17px;
  height: 15px;
  left: 35px;
  transition: all 1s;
}

.job-part-time-location-list ul li::after {
  position: absolute;
  content: '';
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  background: #f89c00;
  width: 10px;
  height: 8px;
  right: 20px;
  transition: all 1s;
}

.job-part-time-location-list ul li a {
  display: block;
  width: 100%;
  height: 100%;
  line-height: 3;
  transition: all 1s;
}

.job-part-time-location-list ul li:hover {
  color: #38a549;
  border: 1px solid #38a549;
  /* cursor: pointer; */
}

.job-part-time-location-list ul li:hover a {
  color: #38a549;
}

.job-part-time-location-list ul li:hover::after {
  background: #f2c51b;
}

.job-part-time-location-list ul li:hover::before {
  background-color: #38a549;
}



/*----------------------------------------


qestionnaire


----------------------------------------*/
.lower_inv{opacity:0;}

.qestionnaire article {padding-top: 0;}

.qestionnaire .bg::before {background: url("../renewal/img/qestionnaire/fv_bg.webp") no-repeat center top / cover;}

h1.lower_ti{font-size:85px;font-weight:500;}
h1.lower_ti span{font-size:20px;font-weight:500;margin:0;}

.qestionnaire .qestionnaire_area .cach {margin-bottom: min(10vw, 80px);}
.qestionnaire .qestionnaire_area .inner {width: min(77vw, 1000px);padding: min(10vw, 130px) 0 0;}

.qestionnaire .q_area {position:relative;margin:0 auto;padding:0 0 15px 0;width: min(77vw, 1080px);}
.qestionnaire .q_area .q_area_in{background:#f6f6f6;border-radius:15px;padding:40px 30px 60px 30px;}
.qestionnaire .q_area .q_area_in.q1box h2{color:#47a300;font-size:49px;line-height:1;}
.qestionnaire .q_area .q_area_in.q2box h2{color:#ff902b;font-size:49px;line-height:1;}
.qestionnaire .q_area .q_area_in.q3box h2{color:#00a7c5;font-size:49px;line-height:1;}
.qestionnaire .q_area .q_area_in.q4box h2{color:#e14e5a;font-size:49px;line-height:1;}
.qestionnaire .q_area .q_area_in.q5box h2{color:#34b1e2;font-size:49px;line-height:1;}
.qestionnaire .q_area .q_area_in.q6box h2{color:#8b103d;font-size:49px;line-height:1;}

.qestionnaire .q_area .q_area_in .q_area_in_in_l picture{display:block!important;}

.qestionnaire .q_area .q_area_in.q1box .q_area_in_in{display:flex;align-items: center;margin-top:-25px;}
.qestionnaire .q_area .q_area_in.q1box .q_area_in_in_l{width:50%;max-width:430px;margin:0 auto;flex-shrink: 0;padding:0 20px;}
.qestionnaire .q_area .q_area_in.q1box .q_area_in_in_r{width:50%;}

.qestionnaire .q_area .q_area_in.q4box .q_area_in_in{display:flex;align-items: center;margin-top:-25px;}
.qestionnaire .q_area .q_area_in.q4box .q_area_in_in_l{width:50%;max-width:270px;margin:0 auto;flex-shrink: 0;padding:0 20px;}
.qestionnaire .q_area .q_area_in.q4box .q_area_in_in_r{width:50%;}

.qestionnaire .q_area .q_area_in.q5box .q_area_in_in{display:flex;align-items: center;margin-top:-25px;}
.qestionnaire .q_area .q_area_in.q5box .q_area_in_in_l{width:50%;max-width:303px;margin:0 auto;flex-shrink: 0;padding:0 20px;}
.qestionnaire .q_area .q_area_in.q5box .q_area_in_in_r{width:50%;}


.qestionnaire .q_area_out .qestionnaire_ico1{width:90px;position:absolute;right:-30px;top:-100px;z-index:2;}
.qestionnaire .q_area .qestionnaire_ico2{width:127px;position:absolute;left:-90px;top:-60px;z-index:2;}
.qestionnaire .q_area .qestionnaire_ico3{width:100px;position:absolute;right:-40px;top:-40px;z-index:2;}
.qestionnaire .q_area .qestionnaire_ico4{width:136px;position:absolute;left:-60px;top:-80px;z-index:2;}



.qestionnaire .q_area .q_area_in.q1box .fuki {position: relative;display: flex;margin: 0 0 14px 0;padding: 7px 25px;width: 100%;min-height:70px;color: #47a300;font-size: 14px;background: #FFF;border: solid 2px #47a300;box-sizing: border-box;border-radius:10px;align-items: center;}
.qestionnaire .q_area .q_area_in.q1box .fuki:before {content: "";position: absolute;top: 50%;left: -24px;margin-top: -12px;border: 12px solid transparent;border-right: 12px solid #FFF;z-index: 2;}
.qestionnaire .q_area .q_area_in.q1box .fuki:after {content: "";position: absolute;top: 50%;left: -29px;margin-top: -14px;border: 14px solid transparent;border-right: 14px solid #47a300;z-index: 1;}
.qestionnaire .q_area .q_area_in.q1box .fuki:last-child{margin: 0;}

.qestionnaire .q_area .q_area_in.q2box .fuki {position: relative;display: inline-block;margin-top: 30px;padding: 7px 20px;border: 2px solid #ff902b;border-radius: 10px 10px 10px 0;
background-color: #fff;color: #ff902b;min-height:145px;}
.qestionnaire .q_area .q_area_in.q2box .fuki::before {content: "";position: absolute;bottom: 0;left: 8px;border-style: solid;border-width: 20px 20px 0 0;border-color: #ff902b transparent transparent;translate: -50% 100%;}
.qestionnaire .q_area .q_area_in.q2box .fuki::after {content: "";position: absolute;bottom: 0;left: 8px;border-style: solid;border-width: 15.2px 15.2px 0 0;border-color: #fff transparent transparent;translate: calc(-50% - 0.4px) 100%;}

.qestionnaire .q_area .q_area_in.q3box .fuki {position: relative;display: inline-block;margin-top: 30px;padding: 7px 20px;border: 2px solid #00a7c5;border-radius: 10px 10px 10px 0;
background-color: #fff;color: #00a7c5;min-height:145px;}
.qestionnaire .q_area .q_area_in.q3box .fuki::before {content: "";position: absolute;bottom: 0;left: 8px;border-style: solid;border-width: 20px 20px 0 0;border-color: #00a7c5 transparent transparent;translate: -50% 100%;}
.qestionnaire .q_area .q_area_in.q3box .fuki::after {content: "";position: absolute;bottom: 0;left: 8px;border-style: solid;border-width: 15.2px 15.2px 0 0;border-color: #fff transparent transparent;translate: calc(-50% - 0.4px) 100%;}

.qestionnaire .q_area .q_area_in.q4box .fuki {position: relative;display: flex;margin: 0 0 14px 0;padding: 7px 25px;width: 100%;min-height:70px;color: #e14e5a;font-size: 14px;background: #FFF;border: solid 2px #e14e5a;box-sizing: border-box;border-radius:10px;align-items: center;}
.qestionnaire .q_area .q_area_in.q4box .fuki:before {content: "";position: absolute;top: 50%;left: -24px;margin-top: -12px;border: 12px solid transparent;border-right: 12px solid #FFF;z-index: 2;}
.qestionnaire .q_area .q_area_in.q4box .fuki:after {content: "";position: absolute;top: 50%;left: -29px;margin-top: -14px;border: 14px solid transparent;border-right: 14px solid #e14e5a;z-index: 1;}
.qestionnaire .q_area .q_area_in.q4box .fuki:last-child{margin: 0;}

.qestionnaire .q_area .q_area_in.q5box .fuki {position: relative;display: flex;margin: 0 0 14px 0;padding: 7px 25px;width: 100%;min-height:70px;color: #34b1e2;font-size: 14px;background: #FFF;border: solid 2px #34b1e2;box-sizing: border-box;border-radius:10px;align-items: center;}
.qestionnaire .q_area .q_area_in.q5box .fuki:before {content: "";position: absolute;top: 50%;left: -24px;margin-top: -12px;border: 12px solid transparent;border-right: 12px solid #FFF;z-index: 2;}
.qestionnaire .q_area .q_area_in.q5box .fuki:after {content: "";position: absolute;top: 50%;left: -29px;margin-top: -14px;border: 14px solid transparent;border-right: 14px solid #34b1e2;z-index: 1;}
.qestionnaire .q_area .q_area_in.q5box .fuki:last-child{margin: 0;}

.qestionnaire .q_area .q_area_in.q6box .fuki {position: relative;display: inline-block;margin-top: 30px;padding: 7px 20px;border: 2px solid #8b103d;border-radius: 10px 10px 10px 0;
background-color: #fff;color: #8b103d;}
.qestionnaire .q_area .q_area_in.q6box .fuki::before {content: "";position: absolute;bottom: 0;left: 8px;border-style: solid;border-width: 20px 20px 0 0;border-color: #8b103d transparent transparent;translate: -50% 100%;}
.qestionnaire .q_area .q_area_in.q6box .fuki::after {content: "";position: absolute;bottom: 0;left: 8px;border-style: solid;border-width: 15.2px 15.2px 0 0;border-color: #fff transparent transparent;translate: calc(-50% - 0.4px) 100%;}


.qestionnaire .q_area_out {margin:0 auto;display:flex;width: min(77vw, 1080px);position:relative;}
.qestionnaire .q_area_out .q_area{padding:0 7.5px 15px 0;}
.qestionnaire .q_area_out .q_area:last-child{padding:0 0 0 7.5px;}

.qestionnaire .q_area_in_ti{display:flex;align-items: center;}
.qestionnaire .q_area_in_ti p{padding:0 0 0 15px;font-size:16px;}


.qestionnaire .fuki_area{display:flex;flex-wrap:wrap;margin:0 0 0 -5%;}
.qestionnaire .fuki_area p{width:45%;margin:0 0 0 5%;font-size:14px;}

.qestionnaire .fuki_area2{display:flex;flex-wrap:wrap;margin:0 0 0 -3%;}
.qestionnaire .fuki_area2 p{width:22%;margin:0 0 0 3%;font-size:14px;}



/*----------------------------------------


job-description


----------------------------------------*/
.lower_inv{opacity:0;}

.job-description {
  letter-spacing: 0px;
}
.job-description article {
  padding-top: 0;
}

.job-description .bg::before {background: url("../renewal/img/job-description/fv_bg.webp") no-repeat center top / cover;}

.job-description .inner {
  width: min(75vw, 1000px);
  padding: min(10vw, 130px) 0 0;

}

.job-description_area {
  position: relative;
  display: flex;
  flex-direction: column;
}
.job-description .content-wrap {
  width: min(75vw, 1000px);
  padding: min(14vw, 100px) 10px 0 0;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
/* .lineup_in{display:flex;background:#fff;border-radius:10px;padding:15px 15px 15px 50px;margin:1.5% 0 0 0;} */
.job-description .job-description-info{width:calc(50% - 7px);margin-bottom: 80px;}
.job-description .job-description-info h3{
  font-size:12px;
  font-weight:300;padding: 20px 0 15px 25px;
  font-family: "Noto Sans JP", serif;
  letter-spacing: 0;
}
.job-description .job-description-info h4{
    font-size:46px;
      font-weight:500;
      padding:0 0 20px 25px;
      line-height:1.2;
      font-family: "Roboto", "Noto Sans JP", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
      letter-spacing: 0;
  }
.job-description .job-description-info .arw{width:66px;padding:35px 0 0 0;position:relative;}
.job-description .job-description-info a {
  opacity: 1;
  transition: all .5s;
  display: block;
}
.job-description .job-description-info a .job-description-info-img {
  max-width: 488px;
  width: 100%;
  overflow: hidden;
  border-radius: 10px;
}
.job-description .job-description-info a .job-description-info-img img {
  transform: scale(1);
  transition: transform 800ms ease !important;
}
.job-description .job-description-info a:hover .job-description-info-img img {
  transform: scale(1.1);
}
.job-description .job-description-info a:hover{opacity:.7;filter:alpha(opacity=100);-moz-opacity:1;}

.job-description-info:nth-child(even) {
  transition-delay: .5s;
  transition: all 2.5s;
}


.job-description .lineup_txt {
  padding: 0 20% 0 30px;
  font-size: 16px;
  font-family: "Noto Sans JP", serif;
  min-height: 96px;
  line-height: 2;
  position: relative;
  display: flex;
  align-items: center;
}

.job-description .lineup_txt::after {
  position: absolute;
  content: '';
  width: min(5vw, 66px);
  height: min(5vw, 66px);
  background: url('/assets/renewal/img/common/arw_sel.svg') no-repeat center;
  background-size: 100%;
  right: min(1vw, 15px);
}


.top_mv {
  width: min(77vw, 1000px);
  padding: min(8vw, 110px) 0 0;
  margin: 0 auto;
  position: relative;
}


.top_mv video {
  width: 100%;
}

.top_mv {
  position:relative;
  border-radius:30px;
  width:0;
  max-width:100%;
  min-width:60%;
  margin:0 auto;
  transition : 0.2s;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top_mv a{
  position: absolute;
  top: auto;
  left: auto;
  width: 10%;
  background: transparent;
  z-index: 1;
  transition: .5s;
}
.top_mv a:hover{
  opacity: .7;
}
.top_mv .mv_arw {
  width: 100%;
}
.top_mv video{width:100%;height:100%;display:block;border-radius:30px;}

.fancybox-slide--video .fancybox-content, .fancybox-slide--video iframe {
  background: none !important;
}

@media only screen and (max-width:900px) {
  .job-description .job-description-info h4{
    font-size:42px;
    }
}


/*----------------------------------------


job-description-detail


----------------------------------------*/

/* .job-description-detail .bg::before {
  background: url(/assets/renewal/img/job-description/production-engineer/fv_bg.webp) no-repeat center top / cover;
} */

.job-description-detail-production-engineer .bg::before {
  background: url(/assets/renewal/img/job-description/production-engineer/fv_bg.webp) no-repeat center top / cover;
}
.job-description-detail-product-development .bg::before {
  background: url(/assets/renewal/img/job-description/product-development/fv_bg.webp) no-repeat center top / cover;
}
.job-description-detail-quality-control .bg::before {
  background: url(/assets/renewal/img/job-description/quality-control/fv_bg.webp) no-repeat center top / cover;
}
.job-description-detail-production-manager .bg::before {
  background: url(/assets/renewal/img/job-description/production-manager/fv_bg.webp) no-repeat center top / cover;
}

.job-description-detail .top_mv {
  flex-direction: column;
  padding-right: 10px;
  /* min-width: 45%; */
  width: min(75vw, 1000px);
  min-width: auto;
}

.job-description-detail .person .filter-items {
  width: 100%;
}

.job-description-detail .move_full {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
  align-items: flex-end;
  padding-top: 20px;
  line-height: 1;
}

.job-description-detail .move_full a {
  color: #00a126;
  /* text-decoration: underline; */
  width: auto;
  position: relative;
  font-size: 16px;
}

.job-description-detail .move_full a:hover {
  text-decoration: underline;
  opacity: .7;
}

.job-description-detail .person h3 {
  font-size: 20px;
  font-weight: normal;
  /* margin-bottom: 40px; */
  padding-left: 25px;
  letter-spacing: 0;
}

.job-description-detail .person .filter-items li {
  padding: 40px 7px 0;
  width: 50%;
}

.job-description-detail .person_list li figure {
  position: relative;
}

.job-description-detail .job-description-info {
  margin-bottom: 0;
}

.job-description-detail .job-description-info h4 {
  padding: 0 0 0 25px;
}

.avoid-clicks {
  pointer-events: none;
}

/*----------------------------------------


voice


----------------------------------------*/
.voice article {padding-top: 0;}

.voice .bg::before {background: url("../renewal/img/voice/fv_bg.jpg") no-repeat center top / cover;}

h1.lower_ti{font-size:85px;font-weight:500;}
h1.lower_ti span{font-size:20px;font-weight:500;margin:0;}

.voice .voice_area .cach {margin-bottom: min(10vw, 80px);}
.voice .voice_area .inner {width: min(77vw, 1000px);padding: min(10vw, 130px) 0 0;}

.voice .voice_box {display: flex;justify-content: space-between;flex-direction: row-reverse;align-items: flex-end;padding:0 0 20px 0;}

.voice .voice_box .voice_box_r{width:62%;max-width:610px;flex-shrink: 0;}
.voice .voice_box .voice_box_l{width:38%;padding:0 20px 0 0;}

.voice .voice_box .voice_box_l h2{font-size:49px;padding:0 0 35px 0;}
.voice .voice_box .voice_box_l h3{font-size:16px;padding:0 0 20px 0;}
.voice .voice_box .voice_box_l p.voice_record{font-size:13px;font-weight:400;}

.voice .voice_box .voice_box_l h4{font-size:16px;font-weight:400;padding:0 0 20px 0;}
.voice .voice_box .voice_box_l .system_used{max-width:290px;}
.voice .voice_box .voice_box_l .system_used h4{font-size:14px;background:#f3efcb;border-radius:15px;padding:10px 20px;display:table;margin:30px auto 0 auto;}
.voice .voice_box .voice_box_l .system_used p{border:4px solid #f3efcb;border-radius:20px;padding:35px 10px 25px 10px;text-align:center;margin-top:-15px;}


.voice .voice_box2 {display: flex;padding:0 0 100px 0;}
.voice .voice_box2 .voice_box2_l{width:40%;max-width:381px;flex-shrink: 0;}
.voice .voice_box2 .voice_img2{padding:100px 0 0 0;}
.voice .voice_box2 .voice_box2_r{width:60%;width:100%;padding:0 40px 0 80px;}
.voice .voice_box2 .voice_box2_r h3{font-size:16px;padding:60px 0 30px 0;}
.voice .voice_box2 .voice_box2_r p{font-size:14px;}

.voice .voice_box2 .system_overview {max-width:360px;}
.voice .voice_box2 .system_overview p{font-size:13px;font-weight:400;}
/*.voice .voice_box2 .system_overview .system_overview_dl {padding:20px 0 0 28px;text-indent:-28px;}*/
.voice .voice_box2 .system_overview .system_overview_dl dl {display:flex;font-size:13px;}
.voice .voice_box2 .system_overview .system_overview_dl dl dt{width:48px;font-weight:400;}
.voice .voice_box2 .system_overview .system_overview_dl dl dd{width:100%;font-weight:400;}
.voice .voice_box2 .system_overview p.system_overview_cap{font-size:11px;}







/*----------------------------------------


person


----------------------------------------*/
.person article {
  padding-top: 0;
}

.person .bg::before {
  background: url("../renewal/img/person/fv_bg.jpg") no-repeat center top / cover;
}
/*
.person .fv h1 {
  max-width: 260px;
  width: min(calc((260/1280)*100vw), 260px);
}

.person .fv h1 span {
  width: 120px;
}
*/
.person_area .cach {
  margin-bottom: min(10vw, 80px);
}

.person_area .inner {
  width: min(77vw, 1000px);
  padding: min(10vw, 130px) 0 0;
}

.person_area .inner1035 {
  max-width: 1035px;
  width: min(77vw, 1035px);
  padding: 0 0 min(10vw, 130px);
}

.person_area .person_nav ul {
  gap: 0 min(1.5vw, 15px);
  margin-bottom: min(8vw, 110px);
}

.person_area .person_nav ul li {
  width: calc((16.666% + (min(1.5vw, 15px) / 6)) - min(1.5vw, 15px));
  box-sizing: border-box;
  border-bottom: 1px solid #149f3a;
  margin-bottom: min(3vw, 30px);
}

.person_area .person_nav ul li a {
  position: relative;
  display: block;
  font-size: clamp(1.5rem, 1.5vw, 1.8rem);
}

.person_area .person_nav ul li a span {
  position: absolute;
  right: min(1vw, 10px);
}

.person_area .person_nav ul li a:hover {
  color: #149f3a;
}

.person_area .person_list_contents {
  margin-top: min(9vw, 90px);
}

.person_area .person_list_contents h2 {
  max-width: 62px;
  width: 6%;
  border-top: 1px solid #d7d7b2;
}

.person_area .person_list_contents h2 img {
  display: block;
  max-width: 25px;
  width: 40.4%;
  margin: 0 auto;
  padding-top: min(4vw, 40px);
}

.person_area .person_list {
  width: 89.6%;
  max-width: 930px;
}

.person_area .person_list li {
  width: 50%;
  max-width: 465px;
}

.person_area .person_list li figure {
  position: relative;
  margin-bottom: 0;
  overflow: hidden;
}

.person_area .person_list li figure .arrow_r {
  position: absolute;
  bottom: 15px;
  right: 15px;
  z-index: 11;
}

.person_area .person_list li figure .ico_nyusya {
  position: absolute;
  max-width: 124px;
  width: 26.7%;
  top: 0;
  left: min(1vw, 10px);
  z-index: 2;
}

.person_area .person_list li h3 {
  font-size: clamp(1.5rem, 1.5vw, 1.8rem);
  margin: 1em 0 0;
  transition: 0.5s;
  letter-spacing: 0.08rem;
}

.person_area .person_list li a:hover h3 {
  opacity: 0.7;
}

.person .keywords {font-weight:700;text-align:center;}
.person .filter-cond {display: flex;justify-content: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap;flex-wrap: wrap;width: min(77vw, 1100px);width:77%;max-width: 720px;margin:0 auto;font-size:16px;}
.person .filter-cond li{padding:20px 5px 0 5px;}
.person .filter-cond input[type="checkbox"] {display:none;animation-name: filterfadeIn;animation-fill-mode:forwards;animation-duration:0.4s;}
@keyframes filterfadeIn{
    0% {
      opacity: 0;
    }

    100% {
      opacity: 1;
    }
}
.person .filter-cond input[type="checkbox"]:checked + label {background: #000;color: #fff;border: 1.5px solid #000;}
.person .filter-cond label {transition:all 0.4s;display: block;text-align: center;cursor: pointer;color: #000;border: 1.5px solid #000;border-radius: 50px; background:#fff;padding:1px 10px;}
.person .filter-cond label:hover {background: #fff;color:#000;border: 1.5px solid #c6c6c6;}

.person [data-filter-view]:not([data-filter-view=""]) [data-filter-key] {display:none;animation-name: filterfadeIn;animation-fill-mode:forwards;animation-duration:0.4s;}
.person [data-filter-view][data-filter-view~="生産管理"] [data-filter-key~="生産管理"],
.person [data-filter-view][data-filter-view~="商品開発"] [data-filter-key~="商品開発"],
.person [data-filter-view][data-filter-view~="エンジニア"] [data-filter-key~="エンジニア"],
.person [data-filter-view][data-filter-view~="海外事業"] [data-filter-key~="海外事業"],
.person [data-filter-view][data-filter-view~="品質管理"] [data-filter-key~="品質管理"],
.person [data-filter-view][data-filter-view~="管理部門"] [data-filter-key~="管理部門"],
.person [data-filter-view][data-filter-view~="新卒入社"] [data-filter-key~="新卒入社"],
.person [data-filter-view][data-filter-view~="キャリア入社"] [data-filter-key~="キャリア入社"],
.person [data-filter-view][data-filter-view~="システム"] [data-filter-key~="システム"],
.person [data-filter-view][data-filter-view~="財務"] [data-filter-key~="財務"],
.person [data-filter-view][data-filter-view~="DX"] [data-filter-key~="DX"],
.person [data-filter-view][data-filter-view~="働き方"] [data-filter-key~="働き方"],
.person [data-filter-view][data-filter-view~="福利厚生"] [data-filter-key~="福利厚生"],
.person [data-filter-view][data-filter-view~="グローバル"] [data-filter-key~="グローバル"],
.person [data-filter-view][data-filter-view~="ダイバーシティ"] [data-filter-key~="ダイバーシティ"],
.person [data-filter-view][data-filter-view~="社員育成支援"] [data-filter-key~="社員育成支援"],
.person [data-filter-view][data-filter-view~="理系"] [data-filter-key~="理系"],
.person [data-filter-view][data-filter-view~="文系"] [data-filter-key~="文系"],
.person [data-filter-view][data-filter-view~="教育"] [data-filter-key~="教育"],
.person [data-filter-view][data-filter-view~="研修"] [data-filter-key~="研修"] {display:block;animation-name: filterfadeIn;animation-fill-mode:forwards;animation-duration:0.4s;}

.person .ico_shinsotsu{position:absolute;bottom:0;left:0;background:#ff00ff;color:#fff;z-index:9;font-size:10px;padding:1px 5px;}
.person .ico_career{position:absolute;bottom:0;left:0;background:#0000ff;color:#fff;z-index:9;font-size:10px;padding:1px 5px;}

.person .filter-items{display:flex;-webkit-flex-wrap: wrap; -ms-flex-wrap: wrap;flex-wrap: wrap;width: min(77vw, 1100px);width:77%;max-width:1100px;margin:0 auto;padding:0 0 80px 0;}
.person .filter-items li{width:33.3%;padding:80px 7px 0 7px;}
.person .filter-items li p{font-size:13px;padding:15px 0 7px 0;line-height:1.6;}

.person .sel_keywords{display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap;flex-wrap: wrap;margin:0 0 0 -5px;}
.person .sel_keywords p{margin:6px 0 0 5px;padding:0!important;}
.person .sel_keywords p span{display:block;font-size:10px;background: #000;color: #fff;border-radius:50px;padding:1px 8px;}








/*----------------------------------------


person_details


----------------------------------------*/
.person_details .fv {
  position: relative;
  margin-top: 120px;
  height: auto;
}

.person_details .fv .ph {
  position: relative;
  width: calc(100% - 135px);
  left: 135px;
  overflow: hidden;
  max-height: calc(100vh - 120px);
}

.person_details .fv .ph .ico {
  position: absolute;
  left: 15px;
  top: 0;
  max-width: 170px;
  width: 17%;
}

.person_details .fv .inner {
  position: absolute;
  z-index: 2;
  right: 0;
  top: 8%;
  max-width: 305px;
  width: 30.6667vw;
  height: auto;
  padding: 0;
}

.person_details .fv .inner h1 {
  position: relative;
  width: 80%;
  max-width: 160px;
  bottom: 0;
  margin-bottom: min(2vw, 20px);
}

.person_details .fv .inner h1 span {
  width: 56.5%;
}

.person_details .fv .inner .bumon {
  background: #fff;
  padding: min(1vw, 10px) 0;
}

.person_details .fv .inner .kanri_bumon img {
  display: block;
  width: 44.7%;
  max-width: 136px;
  padding-left: min(2vw, 20px);
}

.person_details .fv .inner .hinshitsu_bumon img {
  display: block;
  width: 65.6%;
  max-width: 200px;
  padding-left: min(2vw, 20px);
}

.person_details .fv .nyusya_date {
  position: relative;
  width: 40%;
  max-width: 430px;
  /* aspect-ratio: 43 / 19; */
  left: 30px;
  bottom: 95px;
  font-size: clamp(1.2rem, 1.2vw, 1.4rem);
  display: flex;
  justify-content: center;
  align-items: center;
  background:#fff;

}
.person_details .fv .nyusya_date_in {
  position: absolute;
}

.person_details .fv .nyusya_date_in p {
  font-size: clamp(1.2rem, 1.2vw, 1.4rem);
}
.person_details .fv .nyusya_date_in p.nyusya_date_shinsotsu{background:#ff00ff;color:#fff;display:table;padding:1px 5px;margin:0 0 15px 0;}
.person_details .fv .nyusya_date_in p.nyusya_date_career{background:#0000ff;color:#fff;display:table;padding:1px 5px;margin:0 0 15px 0;}
.person_details .fv .nyusya_date::before {
  position: relative;
  content: "";
  top: 0;
  bottom: 0;
  left: 0; 
  right: 0;
  width: 100%;
  padding-bottom: 44.18%;
}

.person_details .fv .sel_keywords{position:absolute;left:490px;bottom:130px;display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap;flex-wrap: wrap;margin:0 0 0 -5px;}
.person_details .fv .sel_keywords p{margin:5px 0 0 5px;padding:8px 0 0 0!important;}
.person_details .fv .sel_keywords p span{display:block;font-size:14px;background: #000;color: #fff;border-radius:50px;padding:2px 10px;}

@media only screen and (max-width:1080px) {
  .person_details .fv .sel_keywords{left:46%;bottom:18%;}
  .person_details .fv .sel_keywords p span{font-size:13px;}


}


.person_details article {
  margin-top: -80px;
/*padding-top: min(23vw, 210px);*/
}

.person_details article .person_details_area {
  position: relative;
}

.person_details article .person_details_area::before {
  position: absolute;
  content: "";
  background: #fff;
}

.person_details article .inner {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0;
  width: 100%;
}

.person_details article .person_details_area h2 {
  color: #000;
  font-size: clamp(2.0rem, 2.0vw, 2.6rem);
  margin-bottom: min(5vw, 50px);
  /*letter-spacing: 0.3rem;*/
  line-height: 1.9;
}

.person_details article .person_details_area .ph,
.person_details article .person_details_area .txt_area {
  position: relative;
}

.person_details article .person_details_area .txt_area {
  padding: min(10vw, 120px) 0;
}

.person_details article .person_details_area02 .txt_area {
  padding: min(10vw, 120px) 0 min(6vw, 60px);
}

.person_details article .person_details_area .txt_area p {
  letter-spacing: 0.15rem;
  line-height: 2.0;
  text-align: justify;
}

.person_details article .to_index {
  margin:120px auto 70px auto;
  max-width: 182px;
  width: 44vw;position:relative;
}

.person_details article .to_index a {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.person_details article .to_index a span {
  max-width: 42px;
  width: 6.6667vw;
  top: 0;
}

.person_details article .to_index a img {
  max-width: 270px;
  width: 32vw;
  opacity:1;transition: all 0.5s;
}
.person_details article .to_index a img.arw_sel {opacity:0;transition: all 0.5s;position:absolute;left:0;max-width: 182px;}
.person_details article .to_index a:hover img {opacity: 0;}
.person_details article .to_index a:hover img.arw_sel {opacity:1;}



/*----------------------------------------
person_details_area01
----------------------------------------*/
.person_details article .person_details_area01 {
  max-width: 2000px;
  margin-left:  auto;
  margin-right:  auto;
}
.person_details article .person_details_area01::before {
  width: 78%;
  top: 0;
  left: 22%;
  height: 100%;
  max-width: 1300px;
}

.person_details article .person_details_area01 .ph {
  top: -70px;
  width: 43%;
  max-width: 550px;
}

.person_details article .person_details_area01 .txt_area {
  width: 43%;
  max-width: 520px;
  margin-right: 10%;
  padding-bottom: min(13vw, 170px);
}

/*----------------------------------------
person_details_area02
----------------------------------------*/
.person_details article .person_details_area02 {
  margin-top: -50px;
  max-width: 2000px;
  margin-left:  auto;
  margin-right:  auto;
  margin-bottom: -200px;
}

.person_details article .person_details_area02::before {
  width: 75%;
  top: 0;
  right: 21.48%;
  height: 100%;
  max-width: 1270px;
}

.person_details article .person_details_area02 .ph {
  order: 2;
  top: -35px;
  width: 37.1%;
  max-width: 476px;
  margin-right: 30px;
}

.person_details article .person_details_area02 .txt_area {
  order: 1;
  left: 10%;
  width: 44.6%;
  max-width: 570px;
  margin-right: 10%;
}

/*----------------------------------------
person_details_area03
----------------------------------------*/
.person_details article .person_details_area03 {
  /* margin-top: min(10vw, 100px); */
  max-width: 2200px;
  margin-left: auto;
  margin-right: auto;
}

.person_details article .person_details_area03::before {
  display: none;
}

.person_details article .person_details_area03 .ph {
  padding-top: min(28vw, 280px);
  width: 100%;
  max-width: 100%;
  z-index: 1;
}

.person_details article .person_details_area03 .inner {
  position: relative;
  left: 10%;
  width: 72.65%;
  max-width: 930px;
  z-index: 3;
  background: #fff;
  margin: -150px 0 0 0;
  transition: 0.3s;
}

.person_details article .person_details_area03 .txt_area {
  max-width: 720px;
  width: 80%;
  margin: 0 auto;
  padding-bottom: 180px;

}

/*----------------------------------------
person_details_area04
----------------------------------------*/
.person_details article .person_details_area04 {
  margin-top: -140px;
  max-width: 2000px;
  margin-left:  auto;
  margin-right:  auto;
}

.person_details article .person_details_area04::before {
  width: 80%;
  top: 0;
  right: 6%;
  height: 100%;
  max-width: 1300px;
  transition: 0.3s;
}

.person_details article .person_details_area04 .ph {
  top: 60px;
  width: 40.6%;
  max-width: 520px;
}

.person_details article .person_details_area04 .txt_area {
  width: 40.6%;
  max-width: 520px;
  margin-right: 12%;
}

@media only screen and (max-width:1300px) {
  .person_details article .person_details_area03 .inner {
    left: 0;
  }

  .person_details article .person_details_area04::before {
    right: auto;
    left: 14.8%;
  }
}

@media only screen and (max-width:1200px) {
  .person_details .fv .ph {
    position: relative;
    width: calc(100% - 7%);
    left: 7%;
    overflow: hidden;
    max-height: calc(100vh - 120px);
}
  .person_area .person_nav ul li {
    width: calc((33.333% + (min(1.5vw, 15px) / 3)) - min(1.5vw, 15px));
  }
  .person_details article .person_details_area03 .inner {
    margin: -100px 0 0 0;
}

.job-career .job_area .job_nav .tab_group {
  max-width: 790px;
  justify-content: center;
  margin: 0 auto min(7vw, 80px);
}

.job-career .job_area .job_nav .tab_group li {
  margin-right: 5%;
  margin-bottom: min(5vw, 60px);
}

}

/*----------------------------------------


career/training


----------------------------------------*/
.training {
  line-height: 2;
}

.training article {
  padding-top: 0;
}

.training .bg::before {
  background: url("../../career/training/images/fv_bg.jpg") no-repeat center center / cover;
}

.training .fv h1 {
  width: min(calc((865/1280)*100vw), 865px);
}

.training .fv h1 span {
  width: 120px;
}

.training_area .cach {
  font-size: clamp(1.8rem, 1.8vw, 2.0rem);
  margin: 0 auto min(8vw, 125px);
}

.training_area h2 {
  margin: 0 auto min(3vw, 35px);
}

.training01_area h2 {
  margin-bottom: min(2vw, 20px);
}

.training_area .inner {
  width: 1000px;
  width: min(77vw, 1000px);
  padding: min(10vw, 130px) 0;
}

.training_area ul {
  width: 100%;
}

.training_area ul li {
  width: 32%;
  max-width: 275px;
  margin-top: min(6vw, 60px);
}

.training_area ul li h3 {
  font-size: clamp(1.8rem, 1.8vw, 2.0rem);
  line-height: 1.4;
  text-align: center;
  border-top: 1px solid #149f3a;
  margin: 0 auto min(2.6vw, 25px);
  padding-top: min(4vw, 30px);
  letter-spacing: 0;
}

.training_area ul li figure {
  width: 100px;
  max-width: 23%;
  margin-bottom: 0;
}

.training02_area p,
.training03_area p {
  text-align: center;
}

.training01_area h2 {
  width: min(50.1vw, 501px);
}

.training02_area h2 {
  width: min(49.2vw, 492px);
}

.training03_area h2 {
  width: min(47vw, 470px);
}

.text_A_L {
  text-align: left!important;
}

/*----------------------------------------


career/welfare


----------------------------------------*/
.welfare {
  line-height: 2;
}

.welfare article {
  padding-top: 0;
}

.welfare .bg::before {
  background: url("../../career/welfare/images/fv_bg.jpg") no-repeat center center / cover;
}

.welfare .fv h1 {
  width: min(calc((290/1280)*100vw), 290px);
}

.welfare .fv h1 span {
  width: 80px;
}

.welfare_area .inner {
  width: 1000px;
  width: min(77vw, 1000px);
  padding: min(10vw, 130px) 0 min(4vw, 50px) 0;
}

.welfare_area .cach {
  font-size: clamp(1.8rem, 1.8vw, 2.0rem);
  margin: 0 auto min(8vw, 125px);
}

.welfare_area ul {
  width: 100%;
  justify-content: space-between;
}

.welfare_area ul li {
  width: 47%;
  max-width: 430px;
  margin-bottom: min(6vw, 80px);
}

.welfare_area ul li h2 {
  font-size: clamp(1.8rem, 1.8vw, 2.0rem);
  line-height: 1.4;
}

.welfare_area ul li figure {
  width: 100px;
  max-width: 23%;
  margin-bottom: 0;
}

.welfare_area ul li p {
  margin-top: min(2vw, 25px);
  width: 100%;
}

.welfare_wara-pro .inner {
  max-width: 1600px;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  /* justify-content: flex-start; */
  justify-content: center;
  align-items: flex-start;
  padding: 100px 0 70px;
}

.welfare_wara-pro .welfare_wara-pro-text-wrap {
  max-width: 730px;
  width: 60%;
  padding: 80px 220px 80px 80px;
  /* background: #fff; */
  position: relative;
}

.welfare_wara-pro .welfare_wara-pro-text-wrap::before {
  content: '';
  position: absolute;
  display: block;
  background: #fff;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.welfare_wara-pro .welfare_wara-pro-text-wrap h3 {
  margin-bottom: 60px;
  padding-bottom: 45px;
  text-align: center;
  border-bottom: 1px solid #38a549;
}

.rotate-banner-wrap {
  position: relative;
  max-width: 700px;
  width: 55%;
  max-width: 700px;
  max-height: 360px;
  overflow: hidden;
  margin-left: -175px;
  margin-top: 100px;
  z-index: 10;
}

.rotate-banner .slick-slide {
  height: 100%!important;
}

.rotate-banner .slick-list {
  padding: 0px 15%!important;
  position: relative;
}

/* .rotate-banner .slick-list::before {
  position: absolute;
  content: '';
  background-color: #fff;
  opacity: .5;
  width: 15%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
}

.rotate-banner .slick-list::after {
  position: absolute;
  content: '';
  background-color: #fff;
  opacity: .5;
  width: 15%;
  height: 100%;
  top: 0;
  right: 0;
  z-index: 10;
} */


/* .rotate-banner .slick-list.fadeanimationcover::before,
.rotate-banner .slick-list.fadeanimationcover::after {
  animation: fadeInAnimationCover ease 2s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

@keyframes fadeInAnimationCover {
  0% {
      opacity: 0;
  }
  100% {
      opacity: .5;
   }
} */

.rotate-banner .slick-slide {
  padding: 0 10px;
}

.slick-slide {
  opacity: 0.5;
}

.rotate-banner .slick-active {
  animation: fadeInAnimation ease 1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

@keyframes fadeInAnimation {
  0% {
      opacity: 0.5;
  }
  25% {
    opacity: 0.5;
  }
  100% {
      opacity: 1;
   }
}

.rotate-banner .slick-prev, .rotate-banner .slick-next {
  width: 50px;
  height: 50px;
  z-index: 11;
  content: '';
  transition: .5s;
  scale: 1;
}

.rotate-banner .slick-prev {
  left: 11.5%;
  background: url('/career/welfare/images/slick-prev.svg');
}

.rotate-banner .slick-next {
  right: 11.5%;
  background: url('/career/welfare/images/slick-next.svg');
}

.rotate-banner .slick-next:hover,
.rotate-banner .slick-prev:hover {
  scale: 1.2;
  transform: translateY(-20px);
  opacity: .8;
}

.rotate-banner .slick-prev:before,
.rotate-banner .slick-next::before {
  display: none;
}

.rotate-banner .slick-dots {
  bottom: -50px;
}

.rotate-banner .slick-dots li button:before {
  font-size: 8px;
}

.rotate-banner .slick-dots li.slick-active button:before {
  color: #f89c00;
}

.rotate-banner .slick-dots li {
  margin: 0;
}


@media only screen and (min-width: 1950px) {

  .training_area .inner,
  .welfare_area .inner {
    max-width: 1500px;
    width: 90%;
  }

  .welfare_area ul {
    justify-content: flex-start;
  }

  .welfare_area ul li {
    margin-left: 4.5%;
  }

  .welfare_area ul li:nth-child(3n+1) {
    margin-left: 0;
  }

  .training_area ul li {
    width: 32%;
    max-width: 430px;
  }
}

@media only screen and (max-width:1100px) {
  .training_area ul li {
    width: 47%;
    max-width: 47%;
  }

  .job-part-time .job_area .job_list_area dd {
    padding-right: 0;
    width: min(74vw, 920px);
  }

  .welfare_wara-pro .inner {
    flex-direction: column;
  }
  

.welfare_wara-pro .welfare_wara-pro-text-wrap {
  max-width: 100%;
  width: calc(100vw - 85px);
  padding: 80px 3vw 80px 12.5vw;
}

.rotate-banner-wrap {
  margin-left: auto;
  margin-right: auto;
  width: 65%;
}

.rotate-banner-wrap {
  margin-top: 50px;
}

}

@media only screen and (max-width:900px) {

  .training_area .inner,
  .welfare_area .inner {
    padding-right: 3vw;
  }

  .job-part-time .job_area .job_nav .tab_group {
    font-size: 90%;
  }
}

/*----------------------------------------


warabeya


----------------------------------------*/
.warabeya article {
  padding-top: 0;
}

.warabeya .bg::before {
  background: url("../../aboutus/warabeya/images/fv_bg.jpg") no-repeat center center / cover;
}

.warabeya .fv h1 {
  width: min(calc((685/1280)*100vw), 685px);
}

.warabeya .fv h1 span {
  width: 220px;
}

.warabeya_area .inner {
  padding: min(10vw, 130px) 0;
  /* margin-bottom: 10px; */
}

.warabeya_area .cach {
  font-size: clamp(1.8rem, 1.8vw, 2.0rem);
  margin: 0 auto;
}

.warabeya_area .warabeya_list_contents .warabeya_list {
  /* border-top: 10px solid #f5f5e6; */
  position: relative;
  padding-top: 10px;
}

.warabeya_area .warabeya_list_contents .warabeya_list .inner div,
.warabeya_area-row {
  background: #fff;
}

/* .warabeya_area .warabeya_list_contents .warabeya_list::before {
  content: '';
  position: absolute;
  width: calc(100% - 85px);
  height: 10px;
  background: #f5f5e6;
  top: 0;
  left: 0;
} */

.warabeya_area .warabeya_list_contents .warabeya_list .fade {
  width: 70%;
  margin: 0 auto;
  overflow: hidden;
}

.warabeya_area .warabeya_list_contents .warabeya_list01 .item02 .fade {
  width: 100%;
  height: 100%;
}

.warabeya_area .warabeya_list_contents .warabeya_list01 .item02 .fade img {
  height: 100%;
  object-fit: cover;
}

.warabeya_area .warabeya_list_contents .warabeya_list03 .item02 .fade {
  width: 90%;
}

.warabeya_area .warabeya_list_contents .warabeya_list04 .item03 .fade {
  width: 70%;
}

.warabeya_area .warabeya_list_contents .warabeya_list04 .item04 .fade {
  width: 80%;
}

.warabeya article.bg_l section {
  /* background: #fff; */
  width: calc(100% - 85px);
}

.warabeya article.bg_l::before {
  background: none;
}

/* .warabeya_area .row {
  background: #fff top left;
} */

@media only screen and (min-width:751px) {
  .warabeya_area .warabeya_list_contents .warabeya_list .inner {
    padding: 0;
    display: grid;
    margin: 0;
    /* width: calc(100% - 85px); */
    width: 100%;
    max-width: 100%;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list01 .inner {
    grid-template-columns: 1.15fr 1fr;
    grid-template-rows: auto auto;
  }

  .warabeya_area .warabeya_list01 .item01 {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list03 .inner {
    grid-template-columns: 1.8fr 1fr;
    grid-template-rows: auto auto;
  }

  .warabeya_area .warabeya_list03 .item01 {
    grid-column: 1;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list04 .inner {
    grid-template-columns: 1fr 1.1fr;
    grid-template-rows: auto 105px auto;
  }

  .warabeya_area .warabeya_list04 .item01 {
    grid-column: 1;
    grid-row: 1;
  }

  .warabeya_area .warabeya_list04 .item02 {
    grid-column: 2;
    grid-row: 1 / 3;
  }

  .warabeya_area .warabeya_list04 .item03 {
    grid-column: 1;
    grid-row: 2 / 4;
  }

  .warabeya_area .warabeya_list04 .item04 {
    grid-column: 2;
    grid-row: 3 / 4;
  }
}

.warabeya_area .warabeya_list_contents .bor_r {
  /* border-right: 10px solid #f5f5e6; */
  margin-right: 10px;
}

.warabeya_area .warabeya_list_contents .bor_b,
.warabeya_area .warabeya_list_contents .bor_b_r {
  position: relative;
}

/* .warabeya_area .warabeya_list_contents .bor_b::before {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  width: 100%;
  border-bottom: 10px solid #f5f5e6;
  z-index: 10;
} */

.warabeya_area .warabeya_list_contents .bor_b {
  margin-bottom: 10px;
}

/* .warabeya_area .warabeya_list_contents .bor_b_r::before {
  position: absolute;
  content: "";
  right: 0;
  bottom: 0;
  width: 2000px;
  border-bottom: 10px solid #f5f5e6;
  z-index: 10;
} */

.warabeya_area .warabeya_list_contents .bor_b_r {
  margin-bottom: 10px;
}

/*----------------------------------------


business


----------------------------------------*/
.business .bg::before {
  background: url("../../works/business/images/fv_bg.jpg") no-repeat center top / cover;
}

.business .fv h1 {
  /* width: min(calc((580/1280)*100vw), 580px); */
  width: min(calc((500/1280)*100vw), 500px);
}

.business .fv h1 span {
  width: 120px;
}

.business_area .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
  padding: min(8vw, 125px) 0 min(6vw, 100px);
}

.business_area.business_details01_area .inner {
  padding-top: min(3vw, 50px);
}

.business_area h2 {
  margin: 0 auto 120px;
  margin: 0 auto min(10vw, 120px);
}

.business_area.business_details_area h2 {
  width: 730px;
  width: min(73.0vw, 730px);
}

.business_area.business_details_area {
  position: relative;
  line-height: 2.2;
}

.business_area.business_details_area .txt {
  position: absolute;
  left: 0;
  top: 0;
  max-width: 540px;
  width: 54%;
}

.business_area.business_details_area figure {
  position: relative;
  left: 60%;
  max-width: 550px;
  width: 50vw;
}

/*----------------------------------------

business point_area

----------------------------------------*/
.business_area.point_area {
  position: relative;
}

.business_area.point_area .inner {
  max-width: 1000px;
  width: 90%;
  margin: 30px auto 0;
  padding: min(8vw, 90px) 0 0;
}

.business_area.point_area .ico {
  position: absolute;
  z-index: 2;
}

.business_area.point_area figure {
  position: relative;
  z-index: 1;
}

.business_area.point_area .txt_area {
  position: relative;
  line-height: 2.0;
  padding-bottom: min(7vw, 95px);
}

.business_area.point_area .txt_area::before {
  position: absolute;
  content: "";
  background: #fff;
  top: min(-5vw, -80px);
  height: calc(100% + min(5vw, 80px));
}

.business_area.point_area .txt_area h2 {
  position: relative;
  border-bottom: 1px solid #149f3a;
  padding-bottom: min(3vw, 50px);
  margin-bottom: min(5vw, 70px);
}

.business_area.point_area .txt_area * {
  position: relative;
}

.business_area.point_area .txt_area h2 img {
  display: block;
  width: min(30vw, 366px);
  margin: 0 auto;
}

/*----------------------------------------
business point01_area
----------------------------------------*/
.business_area.point01_area .txt_area::before {
  top: min(-5vw, -80px);
}

.business_area.point01_area .ico {
  width: min(16vw, 210px);
  top: min(-5.5vw, -90px);
  left: calc(43.5% - min(23vw, 290px));
}

.business_area.point01_area figure {
  max-width: 435px;
  width: 43.5%;
  top: min(11vw, 150px);
}

.business_area.point01_area .txt_area {
  max-width: 500px;
  width: 50%;
}

.business_area.point01_area .txt_area::before {
  width: calc(100% + min(25vw, 250px));
  right: min(-4vw, -105px);
}

/*----------------------------------------
business point02_area
----------------------------------------*/
.business_area.point02_area .ico {
  width: min(18.6vw, 236px);
  top: -22.5%;
  right: calc(43.5% - min(39vw, 440px));
}

.business_area.point02_area figure {
  max-width: 454px;
  width: 45.4%;
  top: min(8vw, 110px);
  order: 2;
}

.business_area.point02_area .txt_area {
  max-width: 500px;
  width: 50%;
  order: 1;
}

.business_area.point02_area .txt_area::before {
  width: calc(100% + min(45vw, 450px));
  left: min(-4vw, -105px);
}

/*----------------------------------------
business point03_area
----------------------------------------*/
.business_area.point03_area .txt_area::before {
  top: min(-5vw, -80px);
}

.business_area.point03_area .ico {
  width: min(15.5vw, 210px);
  top: -10%;
  left: calc(43.5% - min(18vw, 230px));
}

.business_area.point03_area figure {
  max-width: 435px;
  width: 43.5%;
  top: min(11vw, 150px);
}

.business_area.point03_area .txt_area {
  max-width: 500px;
  width: 50%;
}

.business_area.point03_area .txt_area::before {
  width: calc(100% + min(22vw, 220px));
  right: min(-4vw, -105px);
}

/*----------------------------------------
business point04_area
----------------------------------------*/
.business_area.point04_area .ico {
  width: min(16.8vw, 215px);
  top: -31%;
  left: calc(43.5% - min(40vw, 440px));
}

.business_area.point04_area figure {
  max-width: 435px;
  width: 43.5%;
  top: min(3.5vw, 90px);
}

.business_area.point04_area figure.sub-img {
  top: auto;
  margin: 10px 0 0;
  width: 49%;
}

.business_area.point04_area figure.sub-img figcaption {
  color: #38a549;
  font-size: 80%;
  font-weight: bold;
  margin-top: 5px;
}

.business_area.point04_area .txt_area {
  max-width: 500px;
  width: 50%;
  padding-bottom: min(5vw, 70px);
}

.business_area.point04_area .inner {
  position: relative;
  padding-bottom: min(3vw, 70px);
}

.business_area.point04_area .inner::before {
  position: absolute;
  content: "";
  height: 100%;
  top: 0;
  width: calc(100% + min(15vw, 250px));
  left: min(0vw, -100px);
  background: #fff;
}

.business_area.point04_area .txt_area::before {
  display: none;
}

/*----------------------------------------
business point05_area
----------------------------------------*/
.business_area.point05_area .ico {
  width: min(12vw, 136px);
  top: min(0vw, -50px);
  right: calc(50% - min(25vw, 300px));
}

.business_area.point05_area figure {
  max-width: 485px;
  width: 95%;
  margin: 0 auto min(5vw, 50px);
  ;
}

.business_area.point05_area .txt_area {
  max-width: 500px;
  width: 50%;
  padding-bottom: min(5vw, 70px);
  left: min(8vw, 60px);
}

.business_area.point05_area .txt_area h2 {
  margin-bottom: min(3vw, 40px);
}

.business_area.point05_area .inner {
  position: relative;
  margin-top: 30px;
}

.business_area.point05_area .inner::before {
  position: absolute;
  content: "";
  height: 100%;
  top: 0;
  left: 0;
  background: #fff;
  max-width: 735px;
  width: 73.5%;
}

.business_area.point05_area .txt_area::before {
  display: none;
}

/*----------------------------------------
business point06_area
----------------------------------------*/
.business_area.point06_area .ico {
  width: min(21vw, 254px);
  top: max(-18.5vw, -230px);
  right: calc(43.5% - min(43vw, 520px));
}

.business_area.point06_area figure {
  max-width: 430px;
  width: 43.0%;
  top: 0;
  padding-bottom: min(5vw, 50px);
  left: min(2vw, 60px);
}

.business_area.point06_area .txt_area {
  max-width: 500px;
  width: 50%;
  padding-top: min(8vw, 100px);
  padding-bottom: min(6vw, 70px);
  left: min(2vw, 60px);
}

.business_area.point06_area .inner {
  position: relative;
}

.business_area.point06_area .inner::before {
  position: absolute;
  content: "";
  height: 100%;
  top: 0;
  width: calc(100% + min(13vw, 250px));
  right: min(-8vw, -80px);
  background: #fff;
}

.business_area.point06_area .txt_area::before {
  display: none;
}

.business_area .point-dtl {
  padding-left: 20px;
  display: inline-block;
}

/*----------------------------------------


message


----------------------------------------*/
.message .bg::before {
  background: url("../../aboutus/message/images/fv_bg.jpg") no-repeat center top / cover;
}

.message .fv h1 {
  /* max-width: 520px; */
  width: min(calc((520/1280)*100vw), 520px);
}

.message .fv h1 span {
  width: 140px;
  /* width: min(calc((140/1280)*100vw), 140px); */
}

.message article.bg_l .title_area {
  margin: 0 auto;
  max-width: 1000px;
}

.message .title_area h2 {
  position: absolute;
  width: 150px;
  top: -30px;
  right: -90px;
  z-index: 2;
}

.message .title_area .ph {
  background: #fff;
  height: 400px;
  z-index: 1;
}

.message .title_area .ph img {
  position: absolute;
  right: 0;
  width: auto;
  height: 100%;
  transition: 0.3s;
}

.message .title_area p.name {
  position: absolute;
  font-size: 1.4rem;
  z-index: 2;
  bottom: 30px;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 270px;
  transform: translateX(-270px);
  transition: 0.3s;
  color: #fff;
}

.message .title_area p.name span {
  display: block;
  font-size: 2.4rem;
}

.message .pc_flex .sec_title_area {
  width: 180px;
  width: min(180px, 15vw);
}

.message .pc_flex h3 {
  width: 24px;
  margin-left: 40px;
  margin-left: min(40px, 4vw);
  margin-top: 10px;
}

.message .pc_flex .txt_area {
  width: calc(100% - 180px);
  transition: 0.3s;
}

.message_demand_area .inner,
.message_about_area .inner {
  /* transform: translateX(-60px); */
  max-width: 850px;
}

.message_demand_area .txt_area {
  max-width: 720px;
}

.message_demand_area .txt_area .txt {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  text-align: center;
  z-index: 1;
}

.message_demand_area .txt_area .txt h4 {
  width: 50%;
  line-height: 2.0;
  letter-spacing: 0;
}

.message .aside {
  font-size: 1.6rem;
  font-size: clamp(1.4rem, 1.4vw, 1.6rem);
  text-align: right;
}

/* .message article.bg_l {
  padding-top: 100px; 
  padding-top: min(100px, 10vw);
  padding-top: 0; 
}

.message .title_area {
  padding-top: 135px;
  padding-top: min(135px, 13.5vw);
} */


@media only screen and (max-width:1500px) {

  /*----------------------------------------


   job


   ----------------------------------------*/
  .job .job_area,
  .job .flow_area {
    width: calc(100% - 85px);
  }

  .job .job_area .job_nav::before {
    width: 100%;
  }

  .job .flow_area {
    margin-left: 85px;
  }

  .job .flow h2 {
    transform: translateX( calc((85px - (100vw - 85px) * .035)) );
  }

  .job-new-graduate .flow .flow_next_step::after {
    transform: translateX(-7.5%);
  }

  .job .job_area .job_list_area,
  .job .flow_area .inner {
    /* margin-left: calc(50% - 42px); */
  }
}

@media only screen and (max-width:1500px) {

  .message article.bg_l .title_area,
  article.bg_l .title_area {
    margin-right: calc(10% + 13vw);
  }
}

@media only screen and (max-width:1200px) {
  .message .title_area .ph {
    overflow: hidden;
  }

  .message .title_area .ph img {
    right: -25%;
  }

  .message .title_area p.name {
    transform: translateX(-45%);
  }

  .message_demand_area .inner,
  .message_about_area .inner {
    transform: translateX(0);
  }

  .message .pc_flex .txt_area {
    width: calc(100% - min(25vw, 200px));
  }

  .entry_area p.txt a {
    display: block;
  }
}

@media only screen and (max-width:1000px) {
  
  .job-career .job_area .job_list_area dd .job-figure-img {
    width: min(33vw, 465px);
    margin-right: min(3vw, 30px);
  }

  .job-part-time .job_area .job_list_area dd .job-figure-img {
    width: min(33vw, 465px);
    margin-right: min(3vw, 30px);
  }

  .job-career .job_area .job_list_area dd {
    width: min(72vw, 920px);
  }

  .job-part-time .job_area .job_list_area dd {
    width: min(72vw, 920px);
  }

  main .map-svg,
  .job-part-time-location-info {
    /* margin: 0 auto; */
    /* margin:0 0 0 auto; */
  }
}

@media only screen and (max-width:900px) {

  .job .job_area .job_list_area,
  .job .flow_area .inner {
    width: 85%;
  }

  .job .flow h2 {
    transform: translateX( calc((85px - (100vw - 85px) * .055)) );
  }

  .job-career .job_area .job_list_area {
    width: 100%;
  }

  .job-career .job_area .job_list_area dd figure figcaption {
    font-size: 15px;
  }

  .job-part-time .job_area .job_list_area {
    width: 100%;
  }

  .job-part-time .job_area .job_list_area dd figure figcaption {
    font-size: 15px;
  }

}

@media only screen and (max-width:750px) {

  /*----------------------------------------


  main/fv


  ----------------------------------------*/
  main .bg {
    height: 83.73333333vw;
    /* height: 115vw; */
  }

   /* main.job .bg {
    height: 115vw;
  } */

  .fv {
    height: 62vw;
    /* height: 100vw; */
  }

  .warabeya .fv {
    height: 80vw;
  }

  .warabeya .bg {
    height: 100vw;
  }

  .training .fv {
    height: 80vw;
  }

  .training .bg {
    height: 100vw;
  }

  /* .job .fv, */
  /* .training .fv,
  .warabeya .fv {
    height: 70vw;
  } */

  main.job .bg {
    /* height: 83.73333333vw; */
    height: 115vw;
  }

  .job .fv {
    height: 100vw;
  }

  .fv h1 {
    bottom: 8vw;
  }

  .fv h1 span {
    font-size: 4.266666667vw;
    margin-top: 2.66666vw;
  }

  /*----------------------------------------


  article


  ----------------------------------------*/
  article {
    padding-top: 100px;
    padding-top: min(100px, 10vw);
  }

  article.bg_l::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    background: #fff;
    width: 97.33333333%;
    z-index: 0;
  }

  article .title_area {
    padding-top: 35px;
    padding-top: min(35px, 3.5vw);
  }

  article.bg_l .title_area {
    margin-right: 5.4%;
  }

  article.bg_r::before {
    position: absolute;
    content: "";
    left: 2.666666667%;
    top: 0;
    height: 100%;
    background: #fff;
    width: 97.33333333%;
    z-index: 0;
  }

  article.bg_r section {
    /*padding-left: 5.4%;*/
  }

  /*----------------------------------------


  entry_area


  ----------------------------------------*/

  .entry_area.shinsotsu_buttons h3 {
    padding-bottom: 10vw;
    margin-bottom: 5.33333vw;
  }

  .entry_area.shinsotsu_buttons ul p {
    margin-bottom: min(10vw, 75px);
  }

  .entry_area.shinsotsu_buttons ul li > p:last-child {
    margin-bottom: 0;
  }

  .entry_area.shinsotsu_buttons p .recruit-year {
    text-align: left;
    margin-bottom: 5.33333vw;
  }

  .entry_area.shinsotsu_buttons h3::before {
    border-left: 4.333333333vw solid transparent;
    border-right: 4.333333333vw solid transparent;
    border-top: 4.333333333vw solid #149f3a;
  }

  .entry_area.shinsotsu_buttons li:nth-child(n+2) {
    padding-top: 15vw;
  }

  .entry_area.career_area li:nth-child(n+2) {
    margin-top: 15vw;
  }

  .entry_area .bnr {
    max-width: 100%;
    width: 100%;
  }

  .entry_area p.txt {
    margin-top: 10vw;
  }

  .entry_area p.txt a {
    margin: 0;
    display: inline-block;
  }

  /*----------------------------------------


 job


 ----------------------------------------*/
  .job-new-graduate .job_area,
  .job-new-graduate .flow_area {
    /*width: 97.33333333%;*/
    width: 100%;
    padding: 0 0;
  }

  .job-new-graduate .job_area .job_nav::before {
    width: 100%;
  }

  .job-new-graduate .flow_area {
    margin-left: 0;
  }

  .job-new-graduate .bg::before {
    background: url("../../entry/new-graduate/images/fv_bg_sp.jpg") no-repeat center top / cover;
  }

  .job-new-graduate .fv h1 {
    width: min(100%, 100%);
  }

  .job-new-graduate .fv h1 span {
    width: min(calc((495/750)*100vw), 495px);
  }

  .job-new-graduate .job_area h2 {
    /* width: 23.4vw; */
    width: 45vw;
    margin: 0 auto 10vw;
  }

  .job-new-graduate .job_area .job_nav .tab_group {
    position: relative;
    display: flex;
    /*width: 89.33333333vw;*/
    width: 92%;
    margin: 0 0 0 2.5%;
  }

  .job-new-graduate .job_area .job_nav::before {
    width: 97.33333333%;
  }

  .job-new-graduate .job_area .job_nav .tab_group li {
    padding: 4vw 1vw;
    letter-spacing: 0;
    font-size: 3vw;
  }

  .job-new-graduate .job_area .job_list_area,
  .job-new-graduate .flow_area .inner {
    width: 90%;
    margin: 0 auto;
    padding-bottom: 10vw;
    transform: translateX(0);
  }

  .job-new-graduate .job_area .job_list_area dl {
    padding: 10.66666667vw 0;
    display: block;
  }

  .job-new-graduate .job_area .job_list_area dl::before {
    width: 21.33333333vw
  }

  .job-new-graduate.job .job_area .job_list_area dt {
    max-width: 100%;
    width: 100%;
  }

  .job-new-graduate .job_area .job_list_area dd {
    max-width: 100%;
    width: 100%;
    padding-right: 0;
  }

  .job-new-graduate .job .job_area .job_list_area dd p {
    margin-bottom: 0;
  }

  .job .job_area .job_list_area dt h3 {
    font-size: 3.733333333vw;
  }

  .job-new-graduate article.bg_r::before {
    width: 97.33333333%;
  }

  .job-new-graduate .flow h2 {
    width: 26.4vw;
    transform: translateX(0);
    margin: 17.33333333vw auto 9.333333333vw;
  }

  .job-new-graduate .flow_area h3.step_title {
    margin: 0 auto 10vw;
    padding-bottom: 8vw;
  }

  .job-new-graduate .flow_area h3.step_title img {
    width: 70.66666667vw;
  }

  .job-new-graduate .flow_area .txt_area .mynavi {
    width: 90%;
    /* width: min(15.6vw, 156px); */
    margin: 0 auto 18.5vw;
  }

  .job-new-graduate .flow_area .txt_area .recnavi {
    width: 90%;
    /* width: min(14.4vw, 144px); */
    margin: 0 auto;
  }

  .job-new-graduate .flow_area .txt_area .entry_btn {
    margin-top: 9vw;
  }

  .job-new-graduate .flow_area .txt_area .entry_btn a {
    padding: 6.666667vw 0;
  }

  .job-new-graduate .flow_area .txt_area .entry_btn img {
    width: 23.33333333vw;
  }

  .job-new-graduate .flow .flow_next_step {
    margin-bottom: 22.66666667vw;
  }

  .job-new-graduate .flow .flow_next_step::after {
    bottom: -15.555vw;
    width: 0;
    height: 0;
    border-left: 6.6666667vw solid transparent;
    border-right: 6.6666667vw solid transparent;
    border-top: 6.6666667vw solid #149f3a;
    transform: translateX(-50%);
  }

  .job-new-graduate .flow .flow_next_step-last .inner {
    padding: min(17vw, 125px) 0;
  }

/*   
  career 
  */

  .job-career .job_area, .job-career .flow_area {
    width: 90%;
    margin: 0 auto;
    padding: 0 0;
  }

  .job-career .bg::before {
    background: url("../../entry/career/images/fv_bg_sp.jpg") no-repeat center top / cover;
  }

  .job-career .fv h1 {
    max-width: 100%;
    width: min(100%, 100%);
  }

  .job-career .fv h1 span {
    width: min(calc((560/750)*100vw), 560px);
  }

  .job-career .job_area .job_nav .tab_group {
    margin: 0 auto min(8vw, 60px);
  }

  .job-career .job_area .job_nav .tab_group li {
    width: 46%;
  }

  .job-career .job_area .job_nav .tab_group li::after{
    width: 5%;
    height: 42%;
  }

  .job-career .job_area .job_nav .tab_group li:nth-child(even) {
    margin-right: 0;
  }

  .job-career .job_area .job_nav .tab_group li a {
    padding: 0 0 2vw;
  }


  .job-career .job_area .job_list_area dd figure {
    flex-direction: column;
  }

  .job-career .job_area .job_list_area dt {
    width: 8.6vw;
    margin-right: min(5.5vw, 100%);
  }

  .job-career .job_area .job_list_area dt span {
    width: min(5vw, 40px);
    padding: min(6vw, 40px) 0 0;
  }

  .job-career .job_area .job_list_area dd {
    width: 77.33vw;
  }

  .job-career .job_area .job_list_area dd .job-figure-img {
    margin-right: 0;
    margin-bottom: min(7vw, 100%);
    width: min(100%, 100%);
  }

  .job-career .job_area .job_list_area dd figure figcaption {
    width: min(100%, 100%);
    font-size: 3.733333333vw;
  }

  .job-career .job_area .job_list_area dd figure figcaption a {
    font-size: 5vw;
    width: min(100%, 100%);
    margin: min(7vw, 45px) auto 0;
  }

  .job-career .job_area .job_list_area dd figure figcaption a span {
    width: min(26vw, 195px);
    margin: min(4vw, 40px) auto;
  }

  .job-career .job_area .job_list_area dd figure figcaption a::after{
    width: 3%;
    height: 18%;
    right: 28%;
    bottom: 40%;
  }

  .job-career .flow h2 {
    width: 26.4vw;
    transform: translateX(0);
    margin: 17.33333333vw auto 9.333333333vw;
  }

  .job-career .flow .flow_next_step-last .inner {
    padding: min(17vw, 125px) 0;
  }

  .entry_area p.txt-top {
    margin-bottom: min(12vw, 90px);
    margin-top: 0;
  }
  
  .entry_area p.txt-bot {
    margin-top: min(12vw, 90px);
    margin-bottom: 0;
  }

/* 
  part-time 
*/

.job-part-time .job_area, .job-part-time .flow_area {
  width: 90%;
  margin: 0 auto;
  padding: 0 0;
}

.job-part-time .bg::before {
  background: url("../../entry/part-time/images/fv_bg_sp.jpg") no-repeat center top / cover;
}

.job-part-time .fv h1 {
  width: min(100%, 100%);
}

.job-part-time .fv h1 span {
  width: min(calc((525/750)*100vw), 525px);
}

.job-part-time .job_area h2 {
  width: 23.4vw;
  margin: 0 auto 10vw;
}

.job-part-time .job_area .job_nav .tab_group {
  margin: 0 auto min(8vw, 60px);
}

.job-part-time .job_area .job_nav .tab_group li {
  width: 46%;
}

.job-part-time .job_area .job_nav .tab_group li::after{
  width: 5%;
  height: 42%;
}

.job-part-time .job_area .job_nav .tab_group li:nth-child(even) {
  margin-right: 0;
}

.job-part-time .job_area .job_nav .tab_group li a {
  padding: 0 0 2vw;
}


.job-part-time .job_area .job_list_area dd figure {
  flex-direction: column;
}

.job-part-time .job_area .job_list_area dt {
  width: 8.6vw;
  margin-right: min(5.5vw, 100%);
}

.job-part-time .job_area .job_list_area dt span {
  width: min(5vw, 40px);
  padding: min(6vw, 40px) 0 0;
}

.job-part-time .job_area .job_list_area dd {
  width: 77.33vw;
}

.job-part-time .job_area .job_list_area dd .job-figure-img {
  margin-right: 0;
  margin-bottom: min(7vw, 100%);
  width: min(100%, 100%);
}

.job-part-time .job_area .job_list_area dd figure figcaption {
  width: min(100%, 100%);
  font-size: 3.733333333vw;
}

.job-part-time .job_area .job_list_area dd figure figcaption a {
  font-size: 5vw;
  width: min(100%, 100%);
  margin: min(7vw, 45px) auto 0;
}

.job-part-time .job_area .job_list_area dd figure figcaption a span {
  width: min(26vw, 195px);
  margin: min(4vw, 40px) auto;
}

.job-part-time .job_area .job_list_area dd figure figcaption a::after{
  width: 3%;
  height: 18%;
  right: 28%;
  bottom: 40%;
}

.job-part-time .flow h2 {
  width: 26.4vw;
  transform: translateX(0);
  margin: 17.33333333vw auto 9.333333333vw;
}

.job-part-time .flow h2.flow-map-title {
  width: 26.4vw;
  transform: translateX(0);
  margin: 17.33333333vw auto 9.333333333vw;
}

.job-part-time .flow .flow_next_step-last .inner {
  padding: min(17vw, 125px) 0;
}

.job-part-time .job_area .job_nav .tab_group {
  justify-content: flex-start;
}

.job-part-time .job_area .job_nav .tab_group li {
  margin-bottom: min(7vw, 50px);  
}

.job-part-time .job_area .job_nav .tab_group li:nth-child(5), 
.job-part-time .job_area .job_nav .tab_group li:nth-child(6), 
.job-part-time .job_area .job_nav .tab_group li:nth-child(7) {
  margin-bottom: min(7vw, 50px);
}

.job-part-time .job_area .job_nav .tab_group {
  margin: 0 auto min(7vw, 50px);
}

.job-part-time .job_area .job_list_area dl {
  padding: 0 0 min(21vw, 150px);
}

.job-part-time .job_area .job_list_area {
  padding: 0 0 min(21vw, 150px);
}

.job-part-time .flow h2.flow-map-title {
  width: 45vw;
}

.job-part-time .map-inner {
  margin: 0 auto;
  padding: min(10vw, 70px) 0 min(14vw, 100px);
}


main .map-svg {
  width: min(85vw, 675px);
  padding: 0 0 min(20vw, 140px);
}

.job-part-time-location-info {
  width: min(85vw, 850px);
  margin: 0 auto;
}

.job-part-time-location-list ul {
  margin-bottom: min(10vw, 75px);
}

.job-part-time-location-list ul li {
  width: min(45%, 275px);
  margin-top: min(6vw, 50px);
  height: min(10vw, 75px);
  font-size: 3vw;
}

.job-part-time-location-list ul li a {
  line-height: 3.2;
}

.job-part-time-location-list ul li::before {
  width: 2.5vw;
  height: 2.5vw;
  left: 7vw;
}

.job-part-time-location-list ul li::after {
  width: 2.2vw;
  height: 1.5vw;
  right: 3vw;
}

.map-svg-note li {
  padding-left: 4.5%;
  margin-bottom: 1.5%;
}



/*----------------------------------------


qestionnaire


----------------------------------------*/

  .qestionnaire .bg::before {background: url("../renewal/img/qestionnaire/fv_bg_sp.webp") no-repeat center top / cover;}

  .qestionnaire .q_area .cach {margin-bottom: 12vw;}
  .qestionnaire .q_area .inner {width: 90%;padding: min(10vw, 130px) 10px 0 0;}




  .qestionnaire .q_area {width: 90%;padding: 15px 10px 0 0;}
  .qestionnaire .q_area .q_area_in{padding:30px 10px 30px 10px;}
  .qestionnaire .q_area .q_area_in.q2box{padding:30px 10px 50px 10px;}
  .qestionnaire .q_area .q_area_in.q3box{padding:30px 10px 50px 10px;}
  .qestionnaire .q_area .q_area_in.q1box h2{font-size:7vw;}
  .qestionnaire .q_area .q_area_in.q2box h2{font-size:7vw;}
  .qestionnaire .q_area .q_area_in.q3box h2{font-size:7vw;}
  .qestionnaire .q_area .q_area_in.q4box h2{font-size:7vw;}
  .qestionnaire .q_area .q_area_in.q5box h2{font-size:7vw;}
  .qestionnaire .q_area .q_area_in.q6box h2{font-size:7vw;}


  .qestionnaire .q_area .q_area_in.q1box .q_area_in_in{display:block;margin-top:0;}
  .qestionnaire .q_area .q_area_in.q1box .q_area_in_in_l{width:100%;padding:0 20px 30px 20px;}
  .qestionnaire .q_area .q_area_in.q1box .q_area_in_in_r{width:100%;padding:0 0 0 10px;}

  .qestionnaire .q_area .q_area_in.q4box .q_area_in_in{display:block;margin-top:0;}
  .qestionnaire .q_area .q_area_in.q4box .q_area_in_in_l{width:100%;padding:0 20px 30px 20px;}
  .qestionnaire .q_area .q_area_in.q4box .q_area_in_in_r{width:100%;padding:0 0 0 10px;}

  .qestionnaire .q_area .q_area_in.q5box .q_area_in_in{display:block;margin-top:0;}
  .qestionnaire .q_area .q_area_in.q5box .q_area_in_in_l{width:100%;padding:0 20px 30px 20px;}
  .qestionnaire .q_area .q_area_in.q5box .q_area_in_in_r{width:100%;padding:0 0 0 10px;}


  .qestionnaire .q_area .qestionnaire_ico1{width:56px;right:-20px;top:-40px;}
  .qestionnaire .q_area .qestionnaire_ico2{width:80px;left:auto;top:-40px;right:-20px;bottom:auto;}
  .qestionnaire .q_area .qestionnaire_ico3{width:63px;right:-20px;top:-20px;}
  .qestionnaire .q_area .qestionnaire_ico4{width:85px;left:auto;top:-20px;right:-20px;bottom:auto;}



  .qestionnaire .q_area .q_area_in.q1box .fuki {padding: 10px 20px;min-height:0;font-size: 3.3vw;}
  .qestionnaire .q_area .q_area_in.q2box .fuki {padding: 10px 20px;min-height:0;}
  .qestionnaire .q_area .q_area_in.q3box .fuki {padding: 10px 20px;min-height:0;}
  .qestionnaire .q_area .q_area_in.q4box .fuki {padding: 10px 20px;min-height:0;font-size: 3.3vw;}
  .qestionnaire .q_area .q_area_in.q5box .fuki {padding: 10px 20px;min-height:0;font-size: 3.3vw;}
  .qestionnaire .q_area .q_area_in.q6box .fuki {padding: 10px 20px;min-height:0;font-size: 3.3vw;}


  .qestionnaire .q_area_out {display:block;width: 100%;}
  .qestionnaire .q_area_out .q_area{padding:15px 10px 0 0;}
  .qestionnaire .q_area_out .q_area:last-child{padding:15px 10px 0 0;}

  .qestionnaire .q_area_in_ti p{font-size:3.5vw;}


  .qestionnaire .fuki_area{display:block;margin:0;}
  .qestionnaire .fuki_area p{width:100%;margin:0;font-size:3.3vw;}

  .qestionnaire .fuki_area2{display:block;margin:0;}
  .qestionnaire .fuki_area2 p{width:100%;margin:0;font-size:3.3vw;}




  /*----------------------------------------


voice


----------------------------------------*/


  .voice .bg::before {background: url("../renewal/img/voice/fv_bg_sp.jpg") no-repeat center top / cover;}

  h1.lower_ti{font-size:9vw;}
  h1.lower_ti span{font-size:4vw;margin:0;}

  .voice .voice_area .cach {margin-bottom: 12vw;}
  .voice .voice_area .inner {width: 90%;padding: min(10vw, 130px) 10px 0 0;}


  .voice .voice_box {display: block;padding:0 0 20px 0;}
  .voice .voice_box .voice_box_r{width:100%;max-width:100%;}
  .voice .voice_box .voice_box_l{width:100%;padding:0;}

  .voice .voice_box .voice_box_l h2{font-size:10vw;padding:20px 0 10px 0;}
  .voice .voice_box .voice_box_l h3{font-size:4vw;}
  .voice .voice_box .voice_box_l p.voice_record{font-size:3vw;}

  .voice .voice_box .voice_box_l h4{font-size:4vw;}
  .voice .voice_box .voice_box_l .system_used{max-width:100%;}
  .voice .voice_box .voice_box_l .system_used h4{font-size:3.5vw;margin:20px auto 0 auto;}
  .voice .voice_box .voice_box_l .system_used p{font-size:4vw;}


  .voice .voice_box2 {display: block;padding:0 0 50px 0;}

  .voice .voice_box2 .voice_box2_l{width:100%;max-width:100%;flex-shrink: 0;}
  .voice .voice_box2 .voice_img2{padding:30px 0 0 0;}
  .voice .voice_box2 .voice_box2_r{width:100%;padding:0;}

  .voice .voice_box2 .voice_box2_r h3{font-size:4vw;padding:60px 0 25px 0;}
  .voice .voice_box2 .voice_box2_r p{font-size:3.5vw;}

  .voice .voice_box2 .system_overview p{max-width:100%;font-size:3.5vw;}


  /*----------------------------------------


person


----------------------------------------*/
  .person article {
    padding-top: 0;
  }

  .person .bg::before {
    background: url("../renewal/img/person/fv_bg_sp.jpg") no-repeat center top / cover;
  }
/*
  .person .fv h1 {
    max-width: 215px;
    width: min(calc((220/750)*100vw), 220px);
  }

  .person .fv h1 span {
    width: min(calc((200/750)*100vw), 200px);
  }
*/
  .person_area .cach {
    margin-bottom: 12vw;
  }

  .person_area .inner {
    width: 90%;
    padding: min(10vw, 130px) 0 0;
  }

  .person_area .inner1035 {
    max-width: 1035px;
    width: 90%;
    padding: 0 0 min(10vw, 130px);
  }

  .person_area .person_nav ul {
    gap: 0 0;
    margin-bottom: 8vw;
    justify-content: space-between;
  }

  .person_area .person_nav ul li {
    width: 48.5%;
    margin-bottom: 5.333vw;
  }

  .person_area .person_nav ul li a {
    font-size: 3.7333vw;
  }

  .person_area .person_nav ul li a span {
    right: 0.8vw;
  }

  .person_area .person_list_contents {
    margin-top: 8vw;
  }

  .person_area .person_list_contents h2 {
    max-width: 8.4vw;
    width: 8.4vw;
  }

  .person_area .person_list_contents h2 img {
    max-width: 4.4vw;
    width: 4.4vw;
    padding-top: 5.3333vw;
  }

  .person_area .person_list {
    width: 77.3333vw;
    max-width: 77.3333vw;
  }

  .person_area .person_list li {
    width: 100%;
    max-width: 100%;
    margin-bottom: 6.667vw;
  }

  .person_area .person_list li figure .arrow_r {
    bottom: 2.6666vw;
    right: 2.6666vw;
  }

  .person_area .person_list li figure .ico_nyusya {
    max-width: 20.6667vw;
    width: 20.6667vw;
    left: 2vw;
  }

  .person_area .person_list li h3 {
    font-size: 3.73333vw;
    letter-spacing: 0;
  }


  .person .keywords {font-size:3.5vw;}
  .person .filter-cond {width: 90%;font-size:3.5vw;}



  .person .ico_shinsotsu{font-size:2.5vw;}
  .person .ico_career{font-size:2.5vw;}

  .person .filter-items{width: 90%;padding:0 0 40px 0;}
  .person .filter-items li{width:100%;padding:40px 0 0 0;}
  .person .filter-items li p{font-size:3vw;padding:15px 0 0 0;}

  .person .sel_keywords p span{font-size:2.5vw;}
  .person_area .person_list {width: 90%;max-width: 90%;padding:10px 10px 40px 0;}


  /*----------------------------------------


person_details


----------------------------------------*/
  .person_details .fv {
    /* margin-top: 14.6667vw; */
    margin-top: 215px;
  }

  .person_details .fv .ph {
    width: calc(100% - 4vw);
    left: 4vw;
    max-height: auto;
  }

  .person_details .fv .ph .ico {
    position: absolute;
    left: 2vw;
    max-width: 20.6777vw;
    width: 20.6777vw;
  }

  .person_details .fv .inner {
    top: 4.5vw;
    max-width: 30.6667vw;
    width: 30.6667vw;
    height: auto;
    padding: 0;
  }

  .person_details .fv .inner h1 {
    width: 27.6vw;
    max-width: 27.6vw;
    bottom: 0;
    margin-bottom: 2vw;
  }

  .person_details .fv .inner h1 span {
    width: 18.6667vw;
    margin-top: 0;
  }

  .person_details .fv .inner .bumon {
    padding: 2vw 0;
  }

  .person_details .fv .inner .kanri_bumon img {
    width: 16.9333vw;
    max-width: 16.9333vw;
    padding-left: 2vw;
  }

  .person_details .fv .inner .hinshitsu_bumon img {
    width: 23.5vw;
    max-width: 23.5vw;
    padding-left: 2vw;
  }

  .person_details .fv .nyusya_date {
    position: relative;
    width: 76vw;
    max-width: 76vw;
    aspect-ratio: 57 / 22;
    left: 2%;
    bottom: 3vw;
    font-size: 3.73333vw;
    justify-content: flex-start;
    padding:0 0 0 20px;
  }

  .person_details .fv .nyusya_date p {
    font-size: 3.73333vw;
  }
  .person_details .fv .nyusya_date::before {padding-bottom: 46.5%;}
  .person_details .fv .sel_keywords{position:static;margin:0 auto;padding:0 10px;}
  .person_details .fv .sel_keywords p span{font-size:3vw;}


  .person_details article {
    padding-top: 200px;
  }

  .person_details article .inner {
    display: block;
  }

  .person_details article .person_details_area h2 {
    font-size: 4.8vw;
    margin-bottom: 5.3333vw;
    letter-spacing: 0;
    line-height: 1.65;
  }

  .person_details article .person_details_area .txt_area {
    padding: 8vw 0;
  }

  .person_details article .person_details_area02 .txt_area {
    padding: 8vw 0 5vw;
  }

  .person_details article .to_index {
    margin: 16vw auto 0vw;
    width: 44vw;
  }

  .person_details article .to_index a span {
    max-width: 6.6667vw;
    height: 5vw;
  }

  .person_details article .to_index a img {
    max-width: 34vw;

  }

  /*----------------------------------------
person_details_area01
----------------------------------------*/
  .person_details article .person_details_area01::before {
    width: 97.3333vw;
    right: 0;
    left: auto;
    height: 100%;
  }

  .person_details article .person_details_area01 .ph {
    top: -13vw;
    width: 68.66666vw;
    max-width: 68.66666vw;
  }

  .person_details article .person_details_area01 .txt_area {
    width: 90%;
    max-width: 90%;
    margin: 0 auto;
    padding-bottom: 12vw;
    margin-top: -13vw;
  }

  /*----------------------------------------
person_details_area02
----------------------------------------*/
  .person_details article .person_details_area02 {
    margin-top: 0;
    margin-bottom: -5vw;
  }

  .person_details article .person_details_area02::before {
    width: 97.3333vw;
    top: 0;
    left: 0;
    right: auto;
  }

  .person_details article .person_details_area02 .ph {
    top: -4vw;
    width: 58.6777vw;
    max-width: 58.6777vw;
    margin-right: 0;
    left: calc(100% - 58.6777vw);
  }

  .person_details article .person_details_area02 .txt_area {
    left: auto;
    width: 90%;
    max-width: 90%;
    margin: 0 auto;
  }

  /*----------------------------------------
person_details_area03
----------------------------------------*/
  .person_details article .person_details_area03 {
    /* margin-top: 8vw; */
  }

  .person_details article .person_details_area03::before {
    width: 97.3333vw;
    left: 0;
    height: 100%;
    display: block;
  }

  .person_details article .person_details_area03 .ph {
    width: 100%;
    max-width: 100%;
    z-index: 1;
    overflow-x: hidden;
    padding-top: 10vw;
  }

  .person_details article .person_details_area03 .ph img {
    position: relative;
    width: 130%;
    left: -15%;
  }

  .person_details article .person_details_area03 .inner {
    left: 0;
    width: 100%;
    background: transparent;
    margin: 0 0 0 0;
  }

  .person_details article .person_details_area03 .txt_area {
    width: 90%;
    max-width: 90%;
    margin: 0 auto;
    padding-bottom: 22.6667vw;

  }

  /*----------------------------------------
person_details_area04
----------------------------------------*/
  .person_details article .person_details_area04::before {
    right: 0;
    width: 97.3333vw;
    left: auto;
  }

  .person_details article .person_details_area04 {
    margin-top: 0;
  }

  .person_details article .person_details_area04 .ph {
    top: 0;
    width: 68.6667vw;
    max-width: 68.6667vw;
    left: 2.66667vw;
    top: -12.6667vw;
  }

  .person_details article .person_details_area04 .txt_area {
    width: 90%;
    max-width: 90%;
    margin: 0 auto;
    margin-top: -12.6667vw;
  }

  /*----------------------------------------


career/training


----------------------------------------*/
  .training .bg::before {
    background: url("../../career/training/images/fv_bg_sp.jpg") no-repeat center center / cover;
  }

  .training .fv h1 {
    /* max-width: 76.8vw; */
    width: min(calc((450/750)*100vw), 450px);
  }

  .training .fv h1 span {
    width: min(calc((205/750)*100vw), 205px);
  }

  .training_area .cach {
    font-size: 3.733333vw;
    margin: 0 auto 13vw;
  }

  .training_area h2 {
    max-width: 100%;
    margin: 0 0 6vw;
  }

  .training01_area h2 {
    margin-bottom: 7vw;
  }

  .training_area .inner {
    width: 90%;
    padding: 13vw 0;
  }

  .training_area ul li {
    width: 100%;
    max-width: 100%;
    margin-top: 11vw;
  }

  .training_area ul li h3 {
    font-size: 3.73333333vw;
    line-height: 1.4;
    margin: 0 auto 4vw;
    padding-top: 5.3333333vw;
    text-align: left;
  }

  .training02_area p,
  .training03_area p {
    text-align: left;
  }

  .training01_area h2 {
    width: 85.33333333vw;
  }

  .training02_area h2 {
    width: 74.66666667vw;
  }

  .training03_area h2 {
    width: 55.06666667vw;
  }

  /*----------------------------------------


  career/welfare


  ----------------------------------------*/
  .welfare article {
    padding-top: 0;
  }

  .welfare .bg::before {
    background: url("../../career/welfare/images/fv_bg_sp.jpg") no-repeat center top / cover;
  }

  .welfare .fv h1 {
    width: min(calc((240/750)*100vw), 240px);
  }

  .welfare .fv h1 span {
    width: min(calc((135/750)*100vw), 135px);
  }

  .welfare_area .inner {
    width: 90%;
    padding: 13vw 0 3vw;
  }

  .welfare_area .cach {
    font-size: 3.73333333vw;
    margin: 0 auto 13vw;
  }

  .welfare_area ul li {
    width: 100%;
    max-width: 100%;
    margin-bottom: 11vw;
  }

  .welfare_area ul li h2 {
    font-size: 3.73333333vw;
  }

  .welfare_area ul li figure {
    width: 16vw;
    max-width: 16vw;
  }

  .welfare_area ul li p {
    margin-top: 2.66666vw;
  }

  .welfare_wara-pro .welfare_wara-pro-text-wrap::before {
    top: 0;
    left: auto;
    right: 0;
    width: 97.33333333%;
  }
  .welfare_wara-pro .welfare_wara-pro-text-wrap {
    width: 100%;
    padding: 10.5vw 0 13.5vw;
  }

  .welfare_wara-pro .welfare_wara-pro-text-wrap h3 {
    width: 90%;
    margin-right: 3.5vw;
    margin-left: auto;
    margin-bottom: 0;
    padding-bottom: 8vw;
  }

  .rotate-banner-wrap {
    width: 97.33333333vw;
    margin-right: 0;
    max-width: 100%;
    max-height: 100%;
    margin-top:10vw;
  }

  .welfare_wara-pro-text-wrap p {
    padding: 9vw 4vw 0 10vw;
  }

  .slick-dotted.slick-slider {
    margin-bottom: 8vw;
}

  .rotate-banner .slick-dots {
    bottom: -10vw;
}

.rotate-banner .slick-dots li {
  width: 5vw;
  height: 5vw;
  margin: 0;
}

.rotate-banner .slick-dots li button:before {
  font-size: 1.5vw;
}

.rotate-banner .slick-prev, 
.rotate-banner .slick-next {
  width: 9vw;
  height: 9vw;
}

  /*----------------------------------------


warabeya


----------------------------------------*/
  .warabeya article {
    padding-top: 0;
  }

  .warabeya .bg::before {
    background: url("../../aboutus/warabeya/images/fv_bg_sp.jpg") no-repeat center center / cover;
  }

  .warabeya .fv h1 {
    width: min(calc((340/750)*100vw), 340px);
  }

  .warabeya .fv h1 span {
    width: min(calc((380/750)*100vw), 380px);
  }

  .warabeya_area .inner {
    width: 90%;
    padding: 13vw 0;
  }
  
  .warabeya .bg_l > .warabeya_area {
    /* margin: 0 auto 10px; */
    margin: 0 auto 1.67777vw 0;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list {
    padding-top: 0;
  }

  .warabeya_area .cach {
    font-size: 3.73333333vw;
    margin: 0 auto;
  }

  .warabeya_area .warabeya_list_contents {}

  .warabeya_area .warabeya_list_contents .warabeya_list02,
  .warabeya_area .warabeya_list_contents .warabeya_list03,
  .warabeya_area .warabeya_list_contents .warabeya_list04 {
    border-top: none;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list .fade {
    width: 100% !important;
    margin: 0 auto;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list .inner div:not(.fade) {
    /* border-bottom: 1.67777vw solid #f5f5e6; */
    margin-top: 1.67777vw;
  }

  .warabeya article.bg_l section {
    /* background: #fff; */
    width: 97.33333333%;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list .inner {
    padding: 0;
    display: block;
    /* width: 97.33333333%; */
    width: 100%;
    margin: 0;
    max-width: 1200px;
  }

  .warabeya_area .warabeya_list_contents .bor_r {
    /* border-right: none; */
    margin-right: 0;
  }

  .warabeya_area .warabeya_list_contents .bor_b,
  .warabeya_area .warabeya_list_contents .bor_b_r {}

  .warabeya_area .warabeya_list_contents .bor_b::before {
    display: none;
  }

  .warabeya_area .warabeya_list_contents .bor_b_r::before {
    display: none;
  }

  /*----------------------------------------


business


----------------------------------------*/
  .business .bg::before {
    background: url("../../works/business/images/fv_bg_sp.jpg") no-repeat center top / cover;
  }

  .business .fv h1 {
    width: min(calc((410/750)*100vw), 410px);
  }

  .business .fv h1 span {
    width: min(calc((135/750)*100vw), 135px);
  }

  .business_area .inner {
    margin: 0 auto;
    padding: 13vw 0 10vw;
  }

  .business_area.business_details01_area .inner {
    padding-top: 3vw;
  }

  .business_area h2 {
    margin: 0 auto 9.333333333vw;
  }

  .business_area.business_details_area h2 {
    width: 79.33333333vw;
    width: 79.33333333vw;
  }

  .business_area.business_details_area {
    position: relative;
    line-height: 2.2;
  }

  .business_area.business_details_area .txt {
    position: relative;
    max-width: 100%;
    width: 100%;
    text-align: justify;
    margin-top: 6.67777vw;
  }

  .business_area.business_details_area figure {
    left: 5.4%;
    max-width: 100%;
    width: 94.66666667vw;
  }

  .business_area.point_area .txt_area h2 {
    padding-bottom: 8vw;
  }

  /*----------------------------------------

business point_area

----------------------------------------*/
  .business_area.point_area {
    position: relative;
  }

  .business_area.point_area:nth-of-type(even)::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    background: #fff;
    width: 97.33333333%;
    z-index: 0;
  }

  .business_area.point_area:nth-of-type(odd)::before {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    height: 100%;
    background: #fff;
    width: 97.33333333%;
    z-index: 0;
  }

  .business_area.point_area .inner {
    width: 90%;
    margin: 9.333333333vw auto;
    padding: 13vw 0 10vw;
  }

  .business_area.point_area figure {
    margin-bottom: 8vw;
  }

  .business_area.point_area .ico {
    position: absolute;
    z-index: 2;
    left: -3vw !important;
    right: auto !important;
    top: -19vw !important;
    bottom: auto !important;
    width: 22vw !important;
  }

  .business_area.point_area .txt_area {
    padding-bottom: 0;
    margin: 0 auto;
  }

  .business_area.point_area .txt_area::before {
    display: none;
  }

  .business_area.point_area .txt_area h2 img {
    width: 55vw;
  }

  /*----------------------------------------
business point01_area
----------------------------------------*/
  .business_area.point01_area figure {
    max-width: 100%;
    width: 100%;
    top: 0;
  }

  .business_area.point01_area .txt_area {
    max-width: 100%;
    width: 82.4vw;
  }

  /*----------------------------------------
business point02_area
----------------------------------------*/
  .business_area.point02_area figure {
    max-width: 100%;
    width: 100%;
    top: 0;
  }

  .business_area.point02_area .txt_area {
    max-width: 100%;
    width: 82.4vw;
  }

  /*----------------------------------------
business point03_area
----------------------------------------*/
  .business_area.point03_area .txt_area::before {
    top: 0;
  }

  .business_area.point03_area figure {
    max-width: 100%;
    width: 100%;
    top: 0;
  }

  .business_area.point03_area .txt_area {
    max-width: 100%;
    width: 82.4vw;
  }

  /*----------------------------------------
business point04_area
----------------------------------------*/
  .business_area.point04_area figure {
    max-width: 100%;
    width: 100%;
    top: 0;

  }

  .business_area.point04_area figure.sub-img {
    margin: 10px 0 0;
  }

  .business_area.point04_area figure.sub-img figcaption {
    margin-top: 5px;
  }

  .business_area.point04_area .txt_area {
    max-width: 100%;
    width: 82.4vw;
    padding-bottom: 0;
  }

  .business_area.point04_area .inner {
    padding-bottom: 10vw;
  }

  .business_area.point04_area .inner::before {
    width: 100%;
    left: 0;
  }

  /*----------------------------------------
business point05_area
----------------------------------------*/
  .business_area.point05_area figure {
    max-width: 100%;
    width: 100%;
    margin: 0 auto min(5vw, 50px);
  }

  .business_area.point05_area .txt_area {
    max-width: 100%;
    width: 82.4vw;
    padding-bottom: 0;
    left: 0;
  }

  .business_area.point05_area .txt_area h2 {
    margin-bottom: min(3vw, 40px);
  }

  .business_area.point05_area .inner {
    margin-top: 0;
  }

  .business_area.point05_area .inner::before {
    max-width: 100%;
    width: 100%;
  }

  /*----------------------------------------
business point06_area
----------------------------------------*/
  .business_area.point06_area figure {
    max-width: 100%;
    width: 100%;
    top: 0;
    padding-bottom: 0;
    left: 0;
  }

  .business_area.point06_area .txt_area {
    max-width: 100%;
    width: 82.4vw;
    padding-top: 0;
    padding-bottom: 0;
    left: 0;
  }

  .business_area.point06_area .inner {
    position: relative;
  }

  .business_area.point06_area .inner::before {
    width: 100%;
    right: 0;
  }

  /*----------------------------------------


  message


  ----------------------------------------*/
  .message .message_about_area,
  .message .message_demand_area {
    width: 97.33333333%;
  }

  .message .bg::before {
    background: url("../../aboutus/message/images/fv_bg_sp.jpg") no-repeat center top / cover;
  }

  .message .fv h1 {
    /* max-width: 64vw; */
    width: min(calc((425/750)*100vw), 425px);
  }

  .message .fv h1 span {
    width: min(calc((235/750)*100vw), 235px);
  }

  .message .title_area {
    margin-right: 0;
  }

  .message .title_area h2 {
    width: 24.33333333vw;
    top: -4vw;
    right: -15vw;
  }

  .message .title_area .ph {
    background: transparent;
    height: auto;
    width: 100%;
  }

  .message .title_area .ph img {
    position: relative;
    width: 100%;
    left: 0;
  }

  .message .title_area p.name {
    position: static;
    font-size: 3.2vw;
    margin: 4vw 0 0 5%;
    width: auto;
    transform: translateX(0);
    padding-left: 0;
    color: #000;
  }

  .message .title_area p.name span {
    font-size: 4.8vw;
  }

  .message .pc_flex .sec_title_area {
    width: 100%;
  }

  .message .pc_flex h3 {
    width: 100%;
    margin-bottom: 9.333333333vw;
    margin-left: 0;
    margin-top: 0;
  }

  .message .pc_flex .txt_area {
    width: 100%;
    margin: 0 auto;
  }

  .message .message_demand_area .pc_flex .txt_area {
    width: 64.66666667vw;
  }

  .message_demand_area .txt_area .txt {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-align: center;
  }

  .message_demand_area .txt_area .txt h4 {
    width: 100%;
  }

  .message_demand_area .txt_area .txt h4:nth-child(1) {
    margin-top: 40%;
  }

  .message_demand_area .txt_area .txt h4:nth-child(2) {
    margin-top: 60%;
  }

  .message .aside {
    font-size: 3.2vw;
    text-align: left;
  }

  /* .warabeya_area .warabeya_list_contents .warabeya_list01::before {
    content: '';
    position: absolute;
    width: 97.33333333%;
    height: 10px;
    background: #f5f5e6;
    top: 0;
    left: 0;
    display: inline-block;
  } */

  .warabeya_area .warabeya_list_contents .warabeya_list::before {
    content: '';
    position: absolute;
    width: calc(100% - 85px);
    height: 10px;
    /* background: #f5f5e6; */
    top: 0;
    left: 0;
    display: none;
  }

  .warabeya_area .warabeya_list_contents .warabeya_list01 .inner div.item01 {
    /* border-top: 1.67777vw solid #f5f5e6; */
    margin-top: 1.67777vw;
  }

  /*----------------------------------------


job-description


----------------------------------------*/

.job-description .bg::before {background: url("../renewal/img/job-description/fv_bg_sp.webp") no-repeat center top / cover;}

.job-description .q_area .cach {margin-bottom: 12vw;}
.job-description .q_area .inner {width: 90%;padding: min(10vw, 130px) 10px 0 0;}

.job-description .inner {
  width: 90%;
  padding: min(10vw, 130px) 0 0;
}

.ti1{padding:0 0 0 30px;}
/* .job-description{display:block;padding:15px;margin:20px 0 0 0;} */
.job-description{display:block;padding:0;margin:20px 0 0 0;}
.job-description .content-wrap {
  width: 90vw;
}
.job-description .job-description-info{
  width:100%;
  padding:0;
  margin-bottom: 12vw;
}
.job-description .job-description-info h3{
  font-size: 2vw;
  padding: 3vw 2vw 2vw 2vw;
}
.job-description .job-description-info h4{
  padding: 0 2vw 4vw;
  font-size: 6vw;
}
.job-description .job-description-info .txt_arw_sp{
  padding:40px 15px 20px 15px;
  display:flex;
  flex-direction: row-reverse;
  align-items: center;
}
.job-description .lineup_txt{
  padding: 0 16vw 0 2vw;
  font-size: 3.3vw;
  align-items: flex-end;
}
.job-description .lineup_txt::after {
  width: 10vw;
  height: 10vw;
  right: min(1vw, 15px);
  bottom: min(2vw, 15px);
  background-size: 100%;
}
  /*----------------------------------------


job-description-detail


----------------------------------------*/

.job-description-detail-production-engineer .bg::before {
  background: url(/assets/renewal/img/job-description/production-engineer/fv_bg_sp.webp) no-repeat center top / cover;
}
.job-description-detail-product-development .bg::before {
  background: url(/assets/renewal/img/job-description/product-development/fv_bg_sp.webp) no-repeat center top / cover;
}
.job-description-detail-quality-control .bg::before {
  background: url(/assets/renewal/img/job-description/quality-control/fv_bg_sp.webp) no-repeat center top / cover;
}
.job-description-detail-production-manager .bg::before {
  background: url(/assets/renewal/img/job-description/production-manager/fv_bg_sp.webp) no-repeat center top / cover;
}
.job-description-detail .top_mv {
  min-width: auto;
  width: 90vw;
}

.job-description-detail .move_full {
  padding-top: 4vw;
}

.job-description-detail .move_full a {
  font-size: 3.8vw;
}

.job-description-detail .job-description-info:last-child {
  margin-bottom: 0;
}

.job-description-detail .job-description-info h4 {
  padding: 0 2vw;
}

.job-description-detail .job-description-info {
  margin-bottom: 10vw;
}

.job-description-detail .person .filter-items li {
  margin-bottom: 6.667vw;
  width: 100%;
}

}

@media only screen and (max-width:480px) {
  .fv {
    height: 66vw;
    /* height: 100vw; */
  }
  .person_details .fv {
    margin-top: 150px;
  }
  .person_details article {padding-top: 45%;}

  /* .job .fv, */
  /* .training .fv,
  .warabeya .fv {
    height: 70vw;
    height: 100vw;
  } */

  .job .fv {
    height: 100vw;
  }

}


@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {transform: translateX(-60%) translateY(-90%);}
  40% {transform: translateX(-60%) translateY(-150%);}
  60% {transform: translateX(-60%) translateY(-120%);}
}

@keyframes bounce-part {
  0%, 20%, 50%, 80%, 100% {transform: translateX(-60%) translateY(-90%);}
  40% {transform: translateX(-60%) translateY(-150%);}
  60% {transform: translateX(-60%) translateY(-120%);}
}
