@charset "utf-8";

/*---------------------------------------------
	body
---------------------------------------------*/
html {
  scroll-behavior: smooth;
  font-size: 62.5%;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
}

body {
  width: 100%;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: center;
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  position: relative;
  color: #333;
  background: #fff;
  overflow: hidden;
  box-sizing: border-box;
}
*{
  box-sizing: border-box;
}

p {
  text-align: left;
}

img {
  width: 100%;
  height: auto;
}

.mincho {
  font-family: "Shippori Mincho", serif;
}

.eigo {
  font-family:"Source Sans 3", sans-serif;
  font-weight: 500;
}

/*---------------------------------------------
	Anchor
---------------------------------------------*/
a {
  outline: none;
}

a:link {
  color: #333;
  text-decoration: none;
}

a:visited {
  color: #333;
  text-decoration: none;
}

a:hover {
  color: #25a239;
  text-decoration: none;
}

a:active {
  color: #25a239;
  text-decoration: none;
}

a {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

#form {
  padding-top: 20px;
  margin-top: -20px;
  display: block;
}

/*---------------------------------------------
	p
---------------------------------------------*/
p {
  margin-bottom: 1.5em;
}

.only_pc_none {
  display: none;
}

.only_sp_none {
  display: block;
}

.sp_br {
  display: none;
}

.pc_br {
  display: inline;
}

/*---------------------------------------------
 ** ON OFF hover
---------------------------------------------*/
.hover {
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.hover:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )";
}

/*=================================================================================================================================*/
/**  共通部分	*/
/*=================================================================================================================================*/

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.scroll-up.done,
.scroll-fade.done {
  opacity: 1;
  transform: translate(0, 0);
}

.load-fade {
  opacity: 0;
  transition: all 4s
    /*処理にかかる時間*/
  ;
}

.mb_8 {
  margin-bottom: 8%;
}

.load-up {
  opacity: 0;
  transform: translateY(30px)
    /*スクロールアップする距離*/
  ;
  transition: all 4s
    /*処理にかかる時間*/
  ;
}

.load-up.done,
.load-fade.done {
  opacity: 1;
  transform: translate(0, 0);
}

.btn01{
  min-width:220px;
  border:1px solid #25a239;
  border-radius: 40px;
  background:#fff;
  display: inline-block;
  padding:18px 15px;
  color:#25a239!important;
  line-height:1.0;
}
.btn01 span{
  position:relative;
  display: inline-block;
  padding-left:30px;
}
.btn01 span::before{
  content:'';
  display: block;
  width:15px;
  height:10px;
  background:url(../img/arrow_green.png) no-repeat center left;
  background-size:100% auto;
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  margin:auto 0;
}
.btn01:hover{
  background:#25a239;
  color:#fff!important;
  border:1px solid #fff;
}
.btn01:hover span::before{
  background:url(../img/arrow_white.png) no-repeat center left;
  background-size:100% auto;
}

.btn02{
  display: inline-block;
  font-size: 120%;
  font-weight: bold;
  line-height:1.0;
  background:#25a239;
  padding:10px 35px 12px 50px;
  box-sizing: border-box;
  text-align: center;
  color: #fff!important;
  border-radius: 40px;
  border:3px solid #25a239;
  background:url(../img/arrow_white.png) no-repeat left 25px center #25a239;
  background-size:13px auto;
}
.btn02:hover{
  background:url(../img/arrow_green.png) no-repeat left 25px center #fff;
  color:#25a239!important;
  background-size:13px auto;
}

a.text_hover {
  width: 100%;
  position: relative;  
  display: inline-block;
  color: #333;
  overflow: hidden;
  background: linear-gradient(to right, #25a239, #25a239 50%, #333 50%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: 200% 100%;
  background-position: 100%;
  transition: background-position 1s ease;
  text-decoration: none;
}
a.text_hover:hover {
  background-position: 0 100%;
}


/*---------------------------------------------
 ** フェードイン
---------------------------------------------*/
.scrollanime {
  opacity: 0;
}

/*一瞬表示されるのを防ぐ*/
.fadeInDown {
  animation-name: fadeInDown;
  animation-duration: 2s;
  animation-fill-mode: forwards;
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
    transform: translate(0);
  }
}

/*2.上下の動きを指定*/
.updown {
  transform: translateY(-50px);
}

.downup {
  transform: translateY(50px);
}

/*3.左右の動きを指定*/
.sect02 {
  overflow: hidden;
}

/*横スクロールバーを隠す*/
.slide-right {
  transform: translateX(100px);
}

.slide-left {
  transform: translateX(-100px);
}

/*---------------------------------------------
 ** ローディング
---------------------------------------------*/

.start {
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 9000;
}

.start p {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: none;
  z-index: 9999;
  width: 70%;
  max-width: 350px;
}

/* fadeUpをするアイコンの動き */

.fadeIn {
  animation-name: fadeUpAnime;
  animation-duration: 2.5s;
  animation-fill-mode: forwards;
  opacity: 0;
  display: block !important;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(40px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#curtain {
  z-index: 999;
}

.jump2 {
  opacity: 0;
}

.jump03 {
  opacity: 0;
}

/* ジャンプする動き */
.jump_on {
  animation: poyoyon 1s ease-in-out 1 forwards;
  animation-delay: 1s;
}

.jump_on02 {
  animation: poyoyon 1s ease-in-out 1 forwards;
  animation-delay: 1s;
}

.jump_on03 {
  animation: poyoyon 1s ease-in-out 1 forwards;
  animation-delay: 0s;
}

@keyframes poyoyon {
  0% {
    transform: scale(0.5, 0.5) translate(0, 0);
  }

  15% {
    transform: scale(0.7, 0.7) translate(0, 8px);
  }

  30% {
    transform: scale(1.02, 1) translate(0, 12px);
  }

  50% {
    transform: scale(0.98, 1.05) translate(0, -12px);
  }

  70% {
    transform: scale(1, 0.9) translate(0, 8px);
  }

  100% {
    transform: scale(1, 1) translate(0, 0);
  }

  0%,
  100% {
    opacity: 1;
  }
}

/* フォントが下から順に表示 */
.pro_anime div p {
  display: inline-block;
  transform-origin: center center;
  transform: translate3d(0, 100px, 0);
  margin-bottom: 0 !important;
}

.pro_anime div p span {
  transform-origin: center center;
  transform: scale3d(0.1, 0.1, 1);
  opacity: 0;
  font-size: 100% !important;
}

.pro_anime_on p:nth-child(1) {
  transition: transform 0.8s ease 0.1s;
}
.pro_anime_on p:nth-child(1) span {
  transition: transform 0.8s ease 0.1s, opacity 0.8s ease 0.1s;
}

.pro_anime_on p:nth-child(2) {
  transition: transform 0.8s ease 0.2s;
}
.pro_anime_on p:nth-child(2) span {
  transition: transform 0.8s ease 0.2s, opacity 0.8s ease 0.2s;
}

.pro_anime_on p:nth-child(3) {
  transition: transform 0.8s ease 0.3s;
}
.pro_anime_on p:nth-child(3) span {
  transition: transform 0.8s ease 0.3s, opacity 0.8s ease 0.3s;
}

.pro_anime_on p:nth-child(4) {
  transition: transform 0.8s ease 0.4s;
}
.pro_anime_on p:nth-child(4) span {
  transition: transform 0.8s ease 0.4s, opacity 0.8s ease 0.4s;
}

.pro_anime_on p:nth-child(5) {
  transition: transform 0.8s ease 0.5s;
}
.pro_anime_on p:nth-child(5) span {
  transition: transform 0.8s ease 0.5s, opacity 0.8s ease 0.5s;
}

.pro_anime_on p:nth-child(6) {
  transition: transform 0.8s ease 0.6s;
}
.pro_anime_on p:nth-child(6) span {
  transition: transform 0.8s ease 0.6s, opacity 0.8s ease 0.6s;
}

.pro_anime_on p:nth-child(7) {
  transition: transform 0.8s ease 0.7s;
}
.pro_anime_on p:nth-child(7) span {
  transition: transform 0.8s ease 0.7s, opacity 0.8s ease 0.7s;
}

.pro_anime_on p:nth-child(8) {
  transition: transform 0.8s ease 0.8s;
}
.pro_anime_on p:nth-child(8) span {
  transition: transform 0.8s ease 0.8s, opacity 0.8s ease 0.8s;
}

.pro_anime_on p:nth-child(9) {
  transition: transform 0.8s ease 0.9s;
}
.pro_anime_on p:nth-child(9) span {
  transition: transform 0.8s ease 0.9s, opacity 0.8s ease 0.9s;
}

.pro_anime_on p:nth-child(10) {
  transition: transform 0.8s ease 1.0s;
}
.pro_anime_on p:nth-child(10) span {
  transition: transform 0.8s ease 1.0s, opacity 0.8s ease 1.0s;
}

.pro_anime_on p:nth-child(11) {
  transition: transform 0.8s ease 1.1s;
}
.pro_anime_on p:nth-child(11) span {
  transition: transform 0.8s ease 1.1s, opacity 0.8s ease 1.1s;
}

.pro_anime_on p:nth-child(12) {
  transition: transform 0.8s ease 1.2s;
}
.pro_anime_on p:nth-child(12) span {
  transition: transform 0.8s ease 1.2s, opacity 0.8s ease 1.2s;
}

.pro_anime_on p:nth-child(13) {
  transition: transform 0.8s ease 1.3s;
}
.pro_anime_on p:nth-child(13) span {
  transition: transform 0.8s ease 1.3s, opacity 0.8s ease 1.3s;
}

.pro_anime_on p:nth-child(14) {
  transition: transform 0.8s ease 1.4s;
}
.pro_anime_on p:nth-child(14) span {
  transition: transform 0.8s ease 1.4s, opacity 0.8s ease 1.4s;
}



.pro_anime_on p {
  transform: translate3d(0, 0, 0) !important;
}

.pro_anime_on p span {
  display: block !important;
  transform: scale3d(1, 1, 1) !important;
  opacity: 1 !important;
}

/*---------------------------------------------
 ** ヘッダー　ナビ
---------------------------------------------*/
header {
  width:100%;
  position:fixed;
  top:0;
  z-index:10;
  background:#fff;
  box-shadow: 0 0 5px #b8b8b8;
}

#header_in{
  width:95%;
  height:105px;
  max-width:1680px;
  margin: 0 auto;
  z-index: 2;
  padding:0 0 0px;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items:flex-end;
}

h1 {
  width:430px;
  margin-bottom:20px;
}

.navOpen #head_btn {
  background: unset;
}


@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}



/*---------------------------------------------
 ** ナビ
---------------------------------------------*/

#nav {
  width:calc(100% - 150px);
  margin-right:60px;
}

#nav>ul#ul_pc {
  display: flex;
  flex-wrap: wrap;
  justify-content:flex-end;
  align-items: flex-end;
}
#ul_sp{
  display: none;
}

#nav>ul#ul_pc>li {
  min-width:140px;
  display: block;
  position:relative;
  display: block;
  overflow: visible;
  text-align: center;
}


#nav>ul#ul_pc>li>a {
  width: 100%;
  min-width:18rem;
  padding:10px 15px;
  position: relative;  
  display: inline-block;
  color: #333;
  font-weight: 500;
  overflow: hidden;
  background: linear-gradient(to right, #25a239, #25a239 50%, #333 50%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: 200% 100%;
  background-position: 100%;
  transition: background-position 1s ease;
  text-decoration: none;
}
#nav>ul#ul_pc>li>a:hover {
  background-position: 0 100%;
}
.gnav_child {
  width:140%;
  visibility: hidden; /*最初は非表示*/
  position: absolute;
  left: -20%;
  top: 100%;
  margin:0 auto;
  background: #25a239;
  -webkit-box-shadow: 0px 3px 10px 2px rgba(25, 26, 26, 0.3);
  box-shadow: 0px 3px 10px 2px rgba(25, 26, 26, 0.3);
  border-radius: 5px;
  z-index: 0;
  transition: all .5s cubic-bezier(0.075, 0.82, 0.165, 1); /*アニメーションの時間とイージング設定*/
  transform: scaleY(0); /*ドロップダウンアニメーションのために高さを０にしておく*/
  transform-origin: center top; /*transformの基準点を設定　上部中央*/
  opacity: 0; /*フェイドインのアニメーションのために透明度０にする*/
  padding:10px;
  box-sizing: border-box;
}

#nav>ul#ul_pc>li:hover .gnav_child { /*親階層の<li>にマウスオンしたとき*/
  visibility: visible; /*表示する*/
  opacity: 1; /*フェイドイン 透明度を１に*/
  transform: scaleY(1); /*ドロップダウン 高さを１に*/
}
/*子階層の▲の装飾*/
.gnav_child::before {
  content: "";
  display: block;
  position: absolute;
  top: -9px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #25a239 transparent;
  z-index: -1;
}

/*子階層の背景の角丸設定*/
.gnav_child > li:first-child {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.gnav_child > li:last-child {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.gnav_child a {
  padding: 5px 15px;
  display: block;
  color:#fff;
  font-size:90%;
}
.gnav_child a:hover {
  background:#4bbe5e;
}


#nav_fresh_career{
  width:300px;
  position:absolute;
  right:10px;
  top:10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#nav_fresh_career a{
  width:48.5%;
  display: block;
  font-size: 105%;
  font-weight: bold;
  line-height:1.0;
  background:#25a239;
  padding:8px 10px;
  box-sizing: border-box;
  text-align: center;
  color: #fff;
  border-radius: 40px;
  border:3px solid #25a239;
}
#nav_fresh_career a:hover{
  background:#fff;
  color:#25a239;
}
#nav_ig{
  width:35px;
  display: block;
  position:absolute;
  right:10px;
  bottom:7px;
}

#nav_ig:hover{
  transform: scale(1.1);
}

.text-progress {
  position: relative;

  margin: 0 auto;
  text-align: center;
  color: #ccc;
}

.text-progress::after {
  content: attr(data-txt);
  position: absolute;
  top: 0;
  left: 0;

  color: #1a1e24;
  clip: rect(0,0,100px,0);
  transition: clip 1.5s linear;
}

.text-progress:hover::after {
  clip: rect(0,300px,100px,0);
}


@media screen and (max-width: 1580px) {
  h1 {
    width: 380px;
    margin-bottom: 42px;
  }
  #nav_fresh_career {
    right: 58px;
    top:12px;
  }
  #nav_ig{
    bottom:auto;
    top:15px;
  }

  #nav>ul#ul_pc {
    width: 100%;
    max-width:1100px;
    margin-right: 0;
    font-size:90%;
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    margin:0 auto;
    justify-content:space-between;
  }
  #nav>ul#ul_pc>li>a {
    min-width:15rem;
    padding: 7px 0px;
  }
  .gnav_child {
    width:160%;
    left: -30%;
  }
}

/*---------------------------------------------
 ** TOP
---------------------------------------------*/

#main {
  width:100%;
  position: relative;
  margin-top:105px;
}
.slide_sp{
  display: none!important;
}
.slick-slide{
  height:auto!important;
}
.slick-slider img {
  object-fit: cover;
  width: 100%;
  max-height:calc(100vh - 105px);
}

#main_ban{
  padding:2% 0;
  text-align: center;
}
#main_ban ul{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}
#main_ban ul li{
  width:20%;
  max-width:220px;
  min-width:130px;
  margin:0 0.8%;
}
#main_ban ul li a{
  display: block;
}
#main_ban ul li a:hover{
  transform: scale(1.08);
  box-shadow: 0 0 8px #b8b8b8;
}


h2{
  margin-bottom:30px;
}
h2 span:nth-of-type(1){
  font-size:240%;
  font-weight: 600;
  letter-spacing: 0.3rem;
  line-height:1.2;
  display: block;
}
h2 span:nth-of-type(2){
  font-size:150%;
  font-weight: 600;
  color:#999999;
  padding-left:4px;
}

.h2_color {
  position: relative;  
  display: inline-block;
  color: #333;
  overflow: hidden;
  background: linear-gradient(to right, #25a239, #25a239 50%, #333 50%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: 200% 100%;
  background-position: 100%;
  transition: background-position 2s ease;
  text-decoration: none;
}
.h2_color_on {
  background-position: 0 100%;
}



#top_news{
  background:#f4f2f2;
  padding:80px 0;
}

#top_news>div{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  position:relative;
}

#top_news>div h2{
  width:240px;
  text-align: left;
}
#top_news>div dl{
  width:calc(100% - 260px);
}
#top_news>div dl a{
  display: block;
  border-bottom:1px solid #ccc;
  padding:15px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
#top_news>div dl a:hover{
  background:#fff;
}
#top_news>div dl a dt{
  width:12rem;
  color:#999;
  position:relative;
}
#top_news>div dl a dt span{
  width:65px;
  display: inline-block;
  color:#fff;
  font-size:85%;
  line-height:1.0;
  padding:5px 8px;
  text-align: center;
  position:absolute;
  right:-65px;
  top:4px;
}
#top_news>div dl a dt span.news_fresh{
  background:#25a239;
}
#top_news>div dl a dt span.news_career{
  background:#ef993a;
}

#top_news>div dl a dd{
  width:calc(100% - 12rem);
  text-align: left;
  padding-left:85px;
  position:relative;
}


#top_news>div>a{
  min-width:170px;
  position:absolute;
  left:0;
  bottom:0;
  padding:16px 20px;
}

.top_p_left{
  padding:80px 0;  
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  align-items: flex-start;
  justify-content: left;
}

.top_p_left >div{
  width:calc(600px - 5%);
  text-align: left;
}
.top_p_left h2{
  text-align: left;
}
.top_p_left h2+p{
  color:#666;
}
.top_p_left > img{
  width:50%;
  margin-right:5%;
}
.top_p_left ul{
  margin-left:0;
}
.top_p_left ul li {
  min-width:60%;
  display: inline-block;
}
.top_p_left ul li a{
  display: inline-block;
  padding:22px 20px 22px 0;
  border-bottom:2px dotted #999;
  font-size:130%;
  line-height:1.0;
  padding-left:35px;
}
.top_p_left ul li a img{
  width:20px;
  display: block;
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  margin:auto 0;
  z-index:1;
}
.top_p_left ul li a::before{
  content:'';
  background:url(../img/arrow_green.png) no-repeat left center;
  width:20px;
  height:18.73px;
  display: block;
  background-size:100% auto;
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  margin:auto 0;
  z-index:2;
  opacity: 0;
  transition: all 0.5s;
}
.top_p_left ul li a:hover::before{
  opacity: 1;
}
@media screen and (max-width: 1260px) {
  .top_p_left h2{
    text-align: center;
  }
  .top_p_left >div {
    width:90%;
    margin:0 auto 3%;
  }
  .top_p_left ul {
    width:50%;
    margin-left:50%;
    margin-top:30px;
    position:relative;
  }
  .top_p_left ul::before{
    content:'';
    width:90%;
    height:500px;
    display: block;
    background:url(../img/top_about02.jpg) no-repeat top right;
    background-size:100% auto;
    position:absolute;
    left:-100%;
    top:0;
  }
  #top_benefit.top_p_left ul::before{
    background:url(../img/top_benefit.jpg) no-repeat top right;
    background-size:100% auto;
  }
  .top_p_left ul li {
    min-width: auto;
    width:100%;
  }
  .top_p_left > img{
    display: none;
  }
  

}

#top_occupation{
  padding:80px 0;  
  background:url(../img/top_occupation.jpg) no-repeat top center;
  background-size:cover;
}
#top_occupation>div h2{
  width:260px;
  margin:0 auto 30px;
}
#top_occupation ul{
  width:90%;
  max-width:1100px;
  margin:0 auto 3%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}
#top_occupation ul li{
  width:190px;
  margin:10px;
  text-align: center;
}
.shadow_y li a{
  width:100%;
  min-height:70px;
  padding:15px 10px 15px 25px;
  line-height:1.4;
  font-weight: 600;
  color:#fff!important;
  position:relative;
  z-index: 2;
  overflow: hidden;
  border:1px solid #fff;
  display: flex;
  align-items:center;
  justify-content: center;
  background: #25a23ac2;
}
.shadow_y li a span{
  display: inline-block;
  position:relative;
  text-align: left;
}
.shadow_y li a span:after{
  content:'';
  width:15px;
  height:15px;
  display: block;
  background:url(../img/arrow_white.png) no-repeat left center;
  background-size:100% auto;
  position:absolute;
  left:-25px;
  top:0;
  bottom:0;
  margin:auto 0;
}
.shadow_y li a::before {
  content: '';
  width: 200%;
  height: 200%;
  display: block;
  background-color: #cfc20c;
  position: absolute;
  left: -220%;
  top: 0;
  bottom:0;
  margin:auto 0;
  transition: 0.8s;
  z-index: -1;
  transform: skewX(-45deg);
  transition: all 1s;
}

.shadow_y li a:hover::before {
  left: -20%;
}
#top_career{
  background:#f4f2f2;
  padding:80px 0;
}
#top_career>div{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  position:relative;
}
#top_career>div>div{
  width:45%;
  text-align: left;
  display: block;
}
#top_career>div h2{
  width:320px;
  text-align: left;
}
#top_career>div p{
  color:#666;
}
#top_career>div .btn01{
  text-align: center;
  position:absolute;
  bottom:0;
  left:0;
}
#top_career>div>img{
  width:50%;
}

@media screen and (max-width: 1200px) {
  #top_career>div>div{
    width:100%;
    text-align: center;
  }
  #top_career>div h2{
    margin:0 auto 30px;
    text-align: center;
  }
  #top_career>div .btn01 {
    margin:2% auto 3%;
    position: relative;
    bottom: auto;
    left: auto;  
  }

  #top_career>div>img{
    width:100%;
    max-width:750px;
    margin:0 auto;
  }
}


#top_interview{
  padding:80px 0;
}
#top_interview>div{
  width:92%;
  max-width:calc(1200px + 2%);
  margin:0 auto;
}
#top_interview h2{
  width:400px;
  margin:0 auto 40px;
}
.interview_list{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.interview_list dl{
  width:25%;
  margin:0 0 3% 0;
  font-feature-settings: "palt";
}
.interview_list dl a{
  display: block;
  padding:15px 15px 30px;
  box-sizing: border-box;
  transition: all 0.5s;
  background:#fff;  
}
.interview_list dl a:hover {
  background:#f4f7cc;  
}
.interview_list dl a dt{
  margin-bottom:5px;
  overflow: hidden;
}
.interview_list dl a dt img{
  transform: scale(1);
  transition: all 0.5s;
  filter: brightness(1);
}
.interview_list dl a:hover dt img{
  transform: scale(1.1);
  filter: brightness(1.1);
}
.interview_list dl a dd{
  text-align: left;
  font-size:90%;
  font-weight: 500;
}
.interview_list dl a dd span{
  color:#fff;
  background:#25a239;
  font-size:90%;
  line-height:1;
  display: inline-block;
  padding:5px 10px;
  margin-right:12px;
}


#foot_ban{
  background:#f4f2f2;
  padding:80px 0;
  text-align: center;
}

#foot_ban>div{
  width:90%;
  max-width:1100px;
  margin:0 auto;
}
#foot_ban>div h2{
  width:400px;
  margin:0 auto 40px;
}
#foot_ban>div>ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}
#foot_ban>div>ul li{
  width:15.6%;
  margin:0 0.5% 1%;
}
#foot_ban>div>ul li a{
  display: block;
  box-sizing: border-box;
  position:relative;
}
#foot_ban>div>ul li a::before{
  content:'';
  width:100%;
  height:100%;
  display: block;
  background:none;
  position:absolute;
  top:0;
  left:0;
  transition: all 0.5s;
}
#foot_ban>div>ul li a:hover{
  transform: scale(1.08);
}
#foot_ban>div>ul li a:hover::before{
  content:'';
  width:100%;
  height:100%;
  display: block;
  position:absolute;
  top:0;
  left:0;
  box-shadow: 0 0 8px #b8b8b8;
}



#foot_data>div{
  width:100%;
  max-width:820px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
#foot_data>div>img{
  width:calc(96% - 620px);
  max-width:130px;
}
#foot_data>div>div{
  width:620px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#foot_data>div>div>ul{
  display: inline-block;
  margin-left:15px;
  font-size:85%;
  text-align: left;
}
#foot_data>div>div>ul li{
  font-size: 90%;
  margin-bottom:3px;
  line-height:1.4;
  text-align: left;
  color: #fff;
}
#foot_data>div>div>ul li:first-child{
  font-weight: 500;
  display: inline-block;
  margin-bottom:15px;
  font-size:100%;
}
#foot_data>div>div>ul li > a{
  color:#fff!important;
}
#foot_data>div>div>ul li > a:hover{
  opacity: 0.8;
  text-decoration: underline;
}
#foot_data>div>p{
  width:100%;
  max-width:820px;
  text-align: right;
  font-size:75%;
  padding:20px 0;
  border-top:1px solid #fff;
  margin-top:30px;
  margin-bottom:0;
  color: #fff;
}




footer{
  padding-top:40px;
}
footer>div:nth-of-type(1){
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom:20px;
}
#foot_data{
  width:calc(95% - 380px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#foot_data img{
  width:185px;
  margin-right:5%;
  margin-bottom:20px;
}
#foot_data p{
  width:calc(95% - 185px);
}
#foot_data p .br_none{
  display: none;
}

#foot_btn{
  width:380px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#foot_btn a{
  width:48.5%;
  display: block;
  font-size: 120%;
  font-weight: bold;
  line-height:1.0;
  background:#25a239;
  padding:12px 10px 12px 15px;
  box-sizing: border-box;
  text-align: center;
  color: #fff;
  border-radius: 40px;
  border:3px solid #25a239;
  background:url(../img/arrow_white.png) no-repeat left 30px center #25a239;
  background-size:13px auto;
}
#foot_btn a:hover{
  background:url(../img/arrow_green.png) no-repeat left 30px center #fff;
  color:#25a239;
  background-size:13px auto;
}

@media screen and (max-width: 1050px) {
  footer>div:nth-of-type(1){
    display: block;
  }
  #foot_data{
    width:540px;
    margin:0 auto 2%;
  }
  #foot_btn{
    margin:0 auto 3%;
  }
}
#copy{
  background:#25a239;
  text-align: center;
  color:#fff;
  font-size:90%;
  padding:8px;
}

#pageTop {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 3;
}

#pageTop a {
  display: block;
  width: 60px;
  height: 60px;
  background: url(../img/pagetop.jpg) no-repeat;
  background-size: 100%;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
}

#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/* 下層ページ */

#con_lower{
  margin-top:105px;
}
#pan{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  font-size:85%;
  padding:15px 0;
  text-align: left;
}
#pan b{
  color:#25a239;
  font-size:80%;
  display: inline-block;
  vertical-align: 1px;
  padding-right:3px;
}
#pan a{
  color:#999;
}
#pan a:hover{
  text-decoration: underline;
}
#pan span{
  display: inline-block;
  padding:0 5px;
}

#main_lower{
  width:calc(600px + 50%);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-left:calc(50% - 600px);
  margin-bottom:50px;
}

#main_lower h2{
  width:420px;
  text-align: left;
  border-left:8px solid #25a239;
  padding-left:20px;
  line-height:1.4;
}
#main_lower h2 span:nth-of-type(1){
  font-size:240%;
  line-height:1.4;
  font-weight:600;
  display: block;
  color: #25a239;
}
#main_lower h2 span:nth-of-type(2){
  font-size:120%;
  color:#999;
  font-weight:600;
  padding-left:5px;
}
#main_lower>div{
  width:calc(98% - 420px);
  height:500px;
  overflow: hidden;
}
#main_lower>div img{
  width:100%;
  height:500px;
  object-fit: cover;
  border-radius: 15px 0 0 15px;
}

@media screen and (max-width: 1200px) {
  #main_lower h2{
    margin-bottom:30px;
  }
  #main_lower>div{
    width:100%;
    height:500px;
    position:absolute;
    top:125px;
  }
  #main_lower>div img{
    width:100%;
    height:500px;
  }
  #pan{
    margin-top:625px;
  }
  #main_lower{
    width:90%;
    margin:20px auto 0px;
  }
}

#con_column{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  position:relative;
}
#con_column_l{
  width:250px;
  border-top:1px solid #25a239;
  border-bottom:1px solid #25a239;
  padding:20px 10px;
  margin-top:60px;
  margin-bottom:40px;
  position:absolute;
  top:0px;
  left:0;
  bottom:auto;
}
#con_column_l.fixed{
  position:fixed;
  top:75px;
  left:calc(50% - 600px);
}

#con_column_l.scroll_end{
  position:absolute;
  top:auto;
  left:0;
  bottom:45px;
}
@media screen and (max-width: 1330px) {
  #con_column_l.fixed{
    left:5%;
  }
  #con_column_l.scroll_end{
    left:0;
  }
  
}
#con_column_l ul li{
  display: block;
  margin:5px 0;
  font-weight: 500;
}
#occupation #con_column_l ul li{
  margin:0;
  line-height:1.4;
}
#con_column_l ul li a{
  padding:5px 0;
  display: block;
  color:#666;
  text-align: left;
}
#con_column_l ul li a:hover{
  color:#25a239;
}
#con_column_l.about01 ul li:nth-of-type(1) a{
  color:#25a239;
}
#con_column_l.about02 ul li:nth-of-type(2) a{
  color:#25a239;
}
#con_column_l.about03 ul li:nth-of-type(3) a{
  color:#25a239;
}
#con_column_l.about04 ul li:nth-of-type(4) a{
  color:#25a239;
}
#con_column_l.about05 ul li:nth-of-type(5) a{
  color:#25a239;
}
#con_column_l.about06 ul li:nth-of-type(6) a{
  color:#25a239;
}

#con_column_l ul li a::before{
  content:'-';
  display: inline-block;
  padding-right:5px;
  vertical-align: 1px;
}

a[id^='anc_'] {
  padding-top: 105px;
  margin-top: -105px;
  display: block;
  pointer-events: none;
}


#con_column_r{
  width:calc(93% - 250px);
  margin-left:calc(7% + 250px);
  padding-bottom:50px;

}

#con_column_r section{
  padding:40px 0;
}

#con_lower h3{
  font-size:220%;
  font-weight: 600;
  text-align: left;
  line-height:1.4;
  padding-bottom:30px;
}

.greeting_name{
  text-align: right;
  font-weight: 500;
  font-size: 120%;
  margin-top:10px;
}
.about_village{
  background:#f4f2f2;
  padding:40px 5%;
  margin-top:5%;
}
.about_village h4{
  font-size:120%;
  color: #25a239;
  font-weight: 600;
  line-height:1.4;
  margin-bottom:3%;
  text-align: left;
}
.about_village>div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.about_village>div>img{
  width:40%;
  margin-bottom:2%;
}
.about_village>div>p{
  width:55%;
  font-size:95%;
}

#about03 dl{
  margin:5% 0;
  text-align: left;
}
#about03 dl dt{
  font-size:150%;
  line-height:1.4;
  background-image: linear-gradient(to right, #575757, #575757 3px, transparent 2px);
  background-size: 6px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
  padding:0 0 5px;
  color: #25a239;
  font-weight: 600;
  margin-bottom:10px;
}
#about03 dl dd{
  margin-bottom:30px;
}

#about04 ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#about04 ul li{
  width:32%;
  margin-right:2%;
  margin-bottom:2%;
}
#about04 ul li:nth-child(3n){
  margin-right:0;
}

#about05>div{
  margin:2% auto 0;
}
#about05>div>dl{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding:20px 10px;
  border-bottom:1px solid #999;
  line-height:1.6;
  text-align: left;
}
#about05>div>dl>dt{
  width:140px;
  font-weight: 600;
}
#about05>div>dl>dd{
  width:calc(100% - 140px);
}
#about05>div>dl>dd br.br_none{
  display: none;
}
@media screen and (max-width: 1230px) {
  #about05>div>dl>dd br.br_none{
    display: inline;
  }
}

.business_data h4{
  font-size:120%;
  font-weight: 600;
  text-align: left;
  margin-bottom:0px;
  line-height:1.4;
}
.business_data>div{
  margin-bottom:40px;
  font-size:90%;
}
.business_list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.business_list ul:nth-of-type(1){
  width:44%;
}
.business_list ul:nth-of-type(2){
  width:52%;
}
@media screen and (max-width: 1270px) {
  .business_list ul:nth-of-type(1){
    width:100%;
  }
  .business_list ul:nth-of-type(2){
    width:100%;
  }
}

#about06>div>dl{
  font-feature-settings: "palt";
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding:20px 10px;
  border-bottom:1px solid #999;
  line-height:1.6;
  text-align: left;
}
#about06>div>dl>dt{
  width:160px;
  font-weight: 600;
}
#about06>div>dl>dd{
  width:calc(100% - 160px - 6rem);
  margin-left:6rem;
  position:relative;
}
#about06>div>dl>dd>span{
  width:4rem;
  display: inline-block;
  text-align: right;
  margin-right:25px;
  position:absolute;
  left:-6rem;
}

@media screen and (max-width: 1230px) {
  #about06>div>dl{
    padding:10px 10px 20px;
  }
  #about06>div>dl>dt{
    width:100%;
    background:#eee;
    padding:3px 10px;
  }
  #about06>div>dl>dd{
    width:100%;
    padding:5px 5px 0;
  }
}


#con_column_l.occu01 ul li:nth-of-type(1) a{
  color:#25a239;
}
#con_column_l.occu02 ul li:nth-of-type(2) a{
  color:#25a239;
}
#con_column_l.occu03 ul li:nth-of-type(3) a{
  color:#25a239;
}
#con_column_l.occu04 ul li:nth-of-type(4) a{
  color:#25a239;
}
#con_column_l.occu05 ul li:nth-of-type(5) a{
  color:#25a239;
}
#con_column_l.occu06 ul li:nth-of-type(6) a{
  color:#25a239;
}
#con_column_l.occu07 ul li:nth-of-type(7) a{
  color:#25a239;
}
#con_column_l.occu08 ul li:nth-of-type(8) a{
  color:#25a239;
}
#con_column_l.occu09 ul li:nth-of-type(9) a{
  color:#25a239;
}
#con_column_l.occu10 ul li:nth-of-type(10) a{
  color:#25a239;
}
#con_column_l.occu11 ul li:nth-of-type(11) a{
  color:#25a239;
}
#con_column_l.occu12 ul li:nth-of-type(12) a{
  color:#25a239;
}
#con_column_l.occu13 ul li:nth-of-type(13) a{
  color:#25a239;
}

.occu_data{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}

.occu_data>img{
  width:40%;
  margin-bottom:15px;
}
.occu_data>div{
  width:55%;
  text-align: left;
}
#con_lower .occu_data>div h3{
  font-size:200%;
  padding-bottom:10px;
}
.occu_data>div p{
  font-size:90%;
}

@media screen and (max-width: 1240px) {
  #con_lower .occu_data>div h3{
    font-size:180%;
  }
}
@media screen and (max-width: 1160px) {
  .occu_data>img{
    width:100%;
    max-width:500px;
    margin:0 0 15px;
  }
  .occu_data>div{
    width:100%;
  }
}
#bene01{
  text-align: left;
}
#bene01 .underline{
  font-size:120%;
  font-weight: 500;
  display: inline;
  background:linear-gradient(transparent 60%, #ffcc99 60%);
  text-align: left;
  margin-bottom:20px;
}

#bene01 h4{
  font-size:130%;
  line-height:1.4;
  background-image: linear-gradient(to right, #575757, #575757 3px, transparent 2px);
  background-size: 6px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
  padding:0 0 5px;
  color: #25a239;
  font-weight: 600;
  margin-bottom:10px;
  margin-bottom:15px;
}
#bene01 h4+p{
  font-size:90%;
}

.bene_img_list>div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.bene_img_list dl{
  width:48%;
  margin-bottom:5%;
  text-align: left;
}
.bene_img_list dl dt{
  margin-bottom:3px;
}
.bene_img_list dl dd{
  font-size:90%;
}
#con_column_l.bene01 ul li:nth-of-type(1) a{
  color:#25a239;
}
#con_column_l.bene02 ul li:nth-of-type(2) a{
  color:#25a239;
}
#con_column_l.bene03 ul li:nth-of-type(3) a{
  color:#25a239;
}
#con_column_l.bene04 ul li:nth-of-type(4) a{
  color:#25a239;
}
#con_column_l.bene05 ul li:nth-of-type(5) a{
  color:#25a239;
}
#con_column_l.bene06 ul li:nth-of-type(6) a{
  color:#25a239;
}

.h4_l_line{
  border-left:6px solid #25a239;
  color: #25a239;
  font-size:130%;
  font-weight: 600;
  padding-left:16px;
  text-align: left;
  margin-bottom:20px;
}
.bene02_list .h4_l_line,
#bene03 .h4_l_line{
  margin-bottom:0;
}
.bene02_list{
  margin-bottom:50px;
  font-feature-settings: "palt";
}
.bene02_list>div{
  padding:3%;
  display: flex;
  flex-wrap: wrap-reverse;
  justify-content: space-between;
  align-items: flex-start;
  padding:25px 0 20px;
  background-image: linear-gradient(to right, #575757, #575757 3px, transparent 2px);
  background-size: 6px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
}
.bene02_list>div>img{
    width:180px;
}
.bene02_list>div>div{
  width:calc(97% - 180px);
  text-align: left;
}
.bene02_list>div>div dl{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom:10px;
}
.bene02_list>div>div dl dt{
  width:160px;
  min-height:45px;
  padding:5px;
  background:#faaa00;
  color:#fff;
  font-weight: 600;
  font-size:105%;
  line-height:1.4;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bene02_list>div>div dl dd{
  width:calc(97% - 160px);
  display: flex;
  align-items: center;
  justify-content: center;
  /* font-size:80%; */
}
.bene02_list>div>div ul{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  font-size:80%;
}
.bene02_list>div>div ul li{
  width:150px;
  min-height:46px;
  display: flex;
  align-items: center;
  border:1px solid #faaa00;
  border-radius: 8px;
  justify-content: center;
  line-height:1.4;
  margin-right:5px;
  margin-bottom:5px;

}
.bene02_list>div>div ul li span{
  text-align: center;
}
.bene02_list>div>div ul li b{
  font-size:80%;
  color:#25a239;
  font-weight: normal;
}

.point_block{
  background:#f4f2f2;
  padding:5%;
  position:relative;
  margin-top:35px;
  margin-bottom:40px;
}
.point_block::before{
  content:'POINT';
  height:32px;
  display: inline-block;
  padding:2px 25px;
  background:#25a239;
  border-radius: 5px 5px 0 0;
  position:absolute;
  top:-32px;
  left:0;
  z-index:-1;
  color:#fff;
  font-weight: 600;
}
.point_block2::before{
  content:'資格取得支援';
  height:32px;
  display: inline-block;
  padding:2px 25px;
  background:#25a239;
  border-radius: 5px 5px 0 0;
  position:absolute;
  top:-32px;
  left:0;
  z-index:-1;
  color:#fff;
  font-weight: 600;
}
.point_block h4{
  color: #25a239;
  font-size:120%;
  font-weight: 600;
  text-align: left;
  line-height:1.6;
  margin-bottom:5px;
}
.point_block2 h4{
  font-size:130%;
  margin-bottom:3;
}
.point_block p{
  font-size:90%;
  margin-bottom:40px;
}
.point_block2 p{
  margin-bottom:30px;
}

.point_block_img {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.point_block_img>div{
  width:62%;
}
.point_block_img>img{
  width:35%;
  margin-bottom:10px;
}
.point_block_img2>img{
  width:22%;
  margin-right:13%;
}
.benefit_gaibu ul{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  font-size:80%;
  margin:0 auto 55px;
}
.benefit_gaibu ul li{
  width:150px;
  min-height:46px;
  display: flex;
  align-items: center;
  border:1px solid #faaa00;
  border-radius: 8px;
  justify-content: center;
  line-height:1.4;
  margin-right:5px;
  margin-bottom:5px;

}
.benefit_gaibu ul li span{
  text-align: center;
}

#bene03{
  text-align: left;
}
.bene03_block{
  background:#f4f2f2;
  padding:5%;
  position:relative;
  margin-top:10px;
  margin-bottom:40px;
}
.bene03_flex{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.bene03_flex>div:nth-of-type(1){
  width:43%;
}
.bene03_flex>div:nth-of-type(2){
  width:53%;
}

.bene03_block dl{
  margin-bottom:20px;
  line-height:1.6;
  text-align: left;
}
.bene03_block dl dt{
  font-weight: 600;
  color: #25a239;
  margin-bottom:2px;
}
.bene03_block dl dd{
  font-size:90%;
}
#bene03 .btn01{
  text-align: center;
}
.eruboshi h4{
  font-size: 130%;
  line-height: 1.4;
  background-image: linear-gradient(to right, #575757, #575757 3px, transparent 2px);
  background-size: 6px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
  padding: 0 0 5px;
  color: #25a239;
  font-weight: 600;
  margin-bottom: 20px;
}
.eruboshi>div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.eruboshi>div>img{
  width:160px;
}
.eruboshi>div>div{
  width:calc(95% - 160px);
  text-align: left;
}
.eruboshi>div>div>p{
  font-size:90%;
}
.eruboshi>div>div>p.eruboshi_small{
  font-size:80%;
  margin-top:20px;
}

#bene04 h4{
  font-size: 130%;
  line-height: 1.4;
  background-image: linear-gradient(to right, #575757, #575757 3px, transparent 2px);
  background-size: 6px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
  padding: 0 0 5px;
  color: #25a239;
  font-weight: 600;
  margin-bottom: 15px;
  text-align: left;
}
#bene04>div{
  margin-bottom:30px;
  font-size:90%;
}

.bene04_01 ul{
  max-width:700px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom:10px;
}
.bene04_01 ul li{
  width:45%;
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.bene04_01 ul li dl{
  width:100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.bene04_01 ul li dl dt{
  margin-right:10px;
}
.bene04_01 ul li dl dd{
  text-align: right;
}
.bene04_dl{
  margin-bottom:15px;
}
.bene04_dl dl{
  margin-bottom:8px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.bene04_dl dl dt{
  width:100px;
  background:#25a239;
  color:#fff;
  font-weight: 500;
  font-size:95%;
  display: flex;
  align-items: center;
  text-align: center;
}
.bene04_dl dl dt span{
  margin:auto;
}
.bene04_dl dl dd{
  width:calc(98% - 100px);
  text-align: left;
}
.bene04_dl dl dd span{
  display: inline-block;
  margin-right:5px;
}
.kome_indent{
  padding-left:1.5rem;
  text-indent: -1.5rem;
  margin-bottom:0;
}
.bene04_05 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.bene04_05 ul li{
  width:48.5%;
  margin-bottom:3%;
}
#bene05{
  text-align: left;
}
.bene05_01{
  max-width:300px;
  background:#f4f2f2;
  display: inline-block;
  padding:20px 20px 10px 80px;
  position:relative;
  text-align: left;
}
.bene05_01::before{
  content:'例';
  font-size:120%;
  font-weight: 600;
  display: inline-block;
  background:#25a239;
  color:#fff;
  border-radius: 100px;
  position:absolute;
  padding:5px 12px;
  top:15px;
  left:20px;
}
.bene05_01 dl{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom:5px;
}
.bene05_01 dl dt{
  width:40px;
  display: inline-block;
}
.bene05_01 dl dd{
  width:calc(95% - 40px);
}
.bene05_01 p{
  font-size:80%;
}

#bene06>div{
  background:#f4f2f2;
  padding:3% 4%;
}

.accordion-content {
  display: none;
}

.accordion-header {
  width:100%;
  padding: 17px 45px 15px 20px;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
  text-align: left;
  color:#25a239;
  font-weight: 500;
  border-top:1px solid #999;
}
#bene06>div .accordion-header:first-child{
  border-top:none;
}

.accordion-header::before,
.accordion-header::after{
  position:absolute;
  content:'';
  top:1px;
  right:20px;
  bottom:0;
  width:12px;
  height:3px;
  margin:auto;
  background:#25a239;
}
.accordion-header::after{
  transform:rotate(-90deg);
  transition:transform 0.3s;
}
.accordion-header.active::after{transform:rotate(0deg);}

.accordion-content {
  width:100%;
  padding: 10px 20px 30px;
  text-align: left;
  padding-left:45px;
}

.accordion-header span,
.accordion-content span{
  padding-left: 28px;
  position: relative;
  display: block;
}

.accordion-header span::before{
  position: absolute;
  content:"Q.";
  top: -3px;
  left: 0px;
  font-weight: 600;
  font-size:120%;
  color:#25a239;
  font-family: "Cabin", sans-serif;
}


.accordion-content span::before{
  position: absolute;
  content:"A.";
  top: -3px;
  left: 0;
  font-weight: 600;
  font-size:120%;
  color:#25a239;
  font-family: "Cabin", sans-serif;
}

/* hover */
.accordion-header:hover {
  background-color: #fff;
}


#main_lower_staff{
  width:calc(600px + 50%);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-left:calc(50% - 600px);
  margin-bottom:50px;
}

#main_lower_staff>div:nth-of-type(1){
  width:420px;
}

#main_lower_staff h2{
  width:420px;
  text-align: left;
  border-left:8px solid #25a239;
  padding-left:20px;
  line-height:1.4;
  box-sizing: border-box;
}
#main_lower_staff h2 span:nth-of-type(1){
  font-size:240%;
  line-height:1.4;
  font-weight:600;
  display: block;
  color: #25a239;
}
#main_lower_staff h2 span:nth-of-type(2){
  font-size:120%;
  color:#999;
  font-weight:600;
  padding-left:5px;
}
#main_lower_staff>div:nth-of-type(1) p{
  font-size:120%;
  padding:20px 0 30px;
  font-weight: 600;
  border-bottom:1px solid #999;
  line-height:2.4;
  color:#666;
  margin-bottom:0;
}
#main_lower_staff>div:nth-of-type(1) ul{
  font-size:110%;
  padding:30px 0;
  font-weight: 500;
  text-align: left;
  color:#666;
}
#main_lower_staff>div:nth-of-type(1) ul li{
  margin-bottom:5px;
}

#main_lower_staff>div:nth-of-type(2){
  width:calc(96% - 420px);
  height:500px;
  overflow: hidden;
  border-radius: 15px 0 0 15px;
}
#main_lower_staff>div img{
  width:100%;
  height:500px;
  object-fit: cover;
  object-position: top center;
}

@media screen and (max-width: 1200px) {
  #main_lower_staff>div:nth-of-type(1){
    width:100%;
  }
  #main_lower_staff h2{
    margin-bottom:30px;
  }
  #main_lower_staff>div:nth-of-type(1) p br{
    display: none;
  }
  #main_lower_staff>div:nth-of-type(1) ul li{
    display: inline-block;
  }
  #main_lower_staff>div:nth-of-type(1) ul li:after{
    content:'/';
    padding:0 15px;
    display: inline-block;
  }
  #main_lower_staff>div:nth-of-type(1) ul li:last-child:after{
    display: none;
  }
  #main_lower_staff>div:nth-of-type(2){
    width:100%;
    height:500px;
    position:absolute;
    top:125px;
  }
  #main_lower_staff>div img{
    width:100%;
    height:500px;
  object-position: center center;
  }

  #main_lower_staff{
    width:90%;
    margin:20px auto 0px;
  }
}

#interview_data{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  padding:70px 0 0;
}
#interview_data>div{
  margin-bottom:80px;
}

#interview_data>div h3{
  font-size: 160%;
  line-height: 1.4;
  background-image: linear-gradient(to right, #575757, #575757 3px, transparent 2px);
  background-size: 6px 1px;
  background-position: left bottom;
  background-repeat: repeat-x;
  padding: 0 0 5px;
  color: #25a239;
  font-weight: 600;
  margin-bottom: 30px;
  text-align: left;
}
#interview_data>div h3 + p{
  margin-bottom:40px;
}
#interview_data>div>div{
  margin-bottom:30px;
}
#interview_data>div h4{
  border-left:5px solid #25a239;
  padding:0 0 0 15px;
  font-size:120%;
  font-weight: 600;
  margin-bottom:10px;
  text-align: left;
  color: #25a239;
}

#interview_data>div>div>div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  text-align: center;
}
#interview_data>div>div>div p{
  width:50%;
}
#interview_data>div>div>div img{
  width:45%;
}
#interview_data{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  padding:70px 0 0;
}

.interview_archive #top_interview{
  padding-top:30px;
}
.interview_archive #top_interview>div {
  width: calc(100% - 120px);
  max-width: 1200px;
}

.interview_archive .interview_list{
  justify-content: center;
}
.interview_archive .interview_list dl {
  width: 33.3%;
  margin: 0 0 3% 0;
}
.interview_archive .interview_list dl a {
  display: block;
  padding: 25px 25px;
}
.interview_archive .interview_list p{
  font-size:90%;
  font-weight: 500;
  line-height:1.4;
}
.interview_archive .interview_list p span{
  font-size:90%;
  display: block;
  margin:10px 0 8px;
}

#career h3{
  text-align: center;
}

#career_data{
  width:90%;
  max-width:1000px;
  margin:0 auto;
  padding:20px 0 100px;
}
#career_data>p:nth-of-type(1){
  margin-bottom:40px;
}
#career #main_lower>div img{
  object-position: 100% 25%;
}
