@charset "UTF-8";
/* CSS Document */
/* iPhone6/7/8 iPhone6/7/8 Plus iPhone5/SE iPhone5/SE yoko */

/* パソコンで見たときは"sp"のclassがついた画像が表示される */
.pc { display: none !important; }
.sp { display: block !important; }

#fader_pc{ display: none !important; }
#fader_sp{ display: block !important; }

.second{
height: 100%;
}
body{
font-size: 16px;
-webkit-text-size-adjust: 100%;
}
h1{
font-size: 24px;
}
h2{
font-size: 16px;
}

/* ドロワーメニュー */
.overlay {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 700;
  opacity: 0;
  transition: opacity .5s;
}
.overlay.open {
  width: 100%;
  height: 100%;
  opacity: 1;
}
.menu-trigger {
  display: inline-block;
  width: 30px;
  height: 28px;
  vertical-align: middle;
  cursor: pointer;
  position: fixed;
  top: 10px;
  right: 15px;
  z-index: 999;
/*   transform: translateX(0);
  transition: transform .5s;
 */}
/* .menu-trigger.active {
  transform: translateX(-250px);
}
 */.menu-trigger span {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background: #85bd58;
  transition: all .5s;
  }
.menu-trigger.active span {
  background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(12px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
  top: 12px;
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}

nav {
  width: 250px;
  height: 100%;
  padding-top: 100px;
  background-color:#85bd58;
  opacity: 0.9;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 800;
  transform: translate(250px);
  transition: all .5s;
}
nav.open {
  transform: translateZ(0);
}
nav ul{
 height: 100%;
 overflow: auto;
 -webkit-overflow-scrolling: touch;
}
::-webkit-scrollbar {
width: 0px;
}
nav li {
  color: #fff;
  text-align: center;
  padding: 10px 0;
  border-bottom: solid 1px #fff;
}
.nav_item a{
color: #fff;
}
.nav_item a:hover{
color: #008d0c;
}
.nav_item a:active{
color: #008d0c;
}
#top_head{
}

.linkcolor_white_sp a:link {
text-decoration: none;
color: #fff;
}
.linkcolor_white_sp a:visited {
text-decoration: none;
color:#fff;
}
.linkcolor_white_sp a:hover {
color:#3783d5;
text-decoration: none;
}
.linkcolor_white_sp a:active {
color:#fff;
text-decoration: none;
}

.main_title{
top: 200px;
left: 20px;
font-size: 30px;
line-height: 1.4;
text-shadow: 0 0 10px #444444,
    0 0 2px #999999,
    0 0 4px #999999,
    0 0 6px #c8c8c8,
    0 0 8x #c8c8c8,
    0 0 10px #c8c8c8,
    0 0 12px #c8c8c8;
letter-spacing: -1px;
}
.main_title_sholder{
font-size: 21px;
}
.bold{
font-weight: bolder;
}

.inner{
position: relative;
width: 96%;
margin: 0 2%;
padding: 100px 7px 80px;
}
.btn_logo{
background: none;
}
/* greeting */
.greeting{
background-image: url(../img/bg_greeting.png);
}
.sub_title{
font-size: 28px;
margin-bottom: 20px;
line-height: 1.6;
}

/* about */
#about{
background-image: url(../img/bg_about_sp.png);
background-size:100%  auto;
background-repeat: no-repeat;
background-color: #f8f8f8;
}
.about_figure{
background-image: url(../img/bg_figure.png);
background-size:100% auto;
}
.title{
font-size: 50px;
line-height: 1.3;
}
.title_japanese{
font-size: 28px;
}
.about_desc_box{
padding: 40px 20px;
text-shadow: 0 0 5px #fff,
0 0 5px #e6e6e6,
0 0 7px #e6e6e6,
0 0 9px #e6e6e6,
0 0 11px #dadada;
}
.about_desc{
font-size: 18px;
line-height: 2;
padding: 20px;
font-weight: bolder;
}
.figure{
float: left;
display: inline;
width: 100%;
}
.figure_title{
width: 100%;
text-align: center;
font-size: 28px;
}
.figure img{
width: 84%;
margin: 30px 8%;
}
.figure_desc{
padding: 25px 30px;
}
/* job request */
.contact_box{
float: left;
display: inline;
width: 100%;
height: 320px;
margin: 50px 0 0 0;
padding: 60px 50px;
color: #fff;
}
.contact_title{
font-weight: bold;
font-size: 20px;
}
.contact_btn{
float: left;
display: inline;
width: 100%;
height: 320px;
margin: 50px 0 0 0;
box-shadow: 0 0 10px gray;
padding: 60px 50px;
}
#btn_contact_original{
border-radius: 100px;
display: block;
width: 200px;
padding: 15px;
box-sizing: border-box;
color: #FFF;
text-decoration: none;
text-align: center;
margin: 20px 0 0;
position:absolute;
right: 80px;
}
#btn_contact_original::after { /* 三角形の表示設定 */
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0;
right: 40px;
width: 0;
height: 0;
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 10px solid #fff;
}
.bg_green{
background-color: #7fc06d;
}
.bg_gray{
background-color: #383838;
}

/* member */
li.changeItem.grid {
width: 50%;
margin-top: 20px;
padding: 0;
}
li.changeItem.grid a {
flex-direction: row;
flex-wrap: wrap;
align-items: center;
}
li.changeItem.grid:last-child a {
border-bottom: solid 1px #eee;
}
li.changeItem.grid a img {
width: 90%;
margin-right: 10px;
/*
height: max-content;
*/
height: auto;
margin-bottom: 0;
}
li.changeItem.grid a .changeItemTxt {
width: 85%;
}
li.changeItem.grid a .changeItemTxt time {
display: none;
}
li.changeItem.grid a .changeItemTxt .itemTitle {
font-size: 1rem;
line-height: 1.5;
margin: 0;
}
li.changeItem.grid a .changeItemTxt ul.itemTag {
display: none;
}
  
.small_industry{
font-size: small;
font-weight: normal;
}

#btn_contact_member{
border-radius: 100px;
display: block;
width: 200px;
padding: 10px;
box-sizing: border-box;
color: #FFF;
text-decoration: none;
text-align: center;
margin: 20px 0 0;
position:absolute;
right: 20%;
}
#btn_contact_omember::after { /* 三角形の表示設定 */
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0;
right: 40px;
width: 0;
height: 0;
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 10px solid #fff;
}

/* news */
.news_edge{
float: left;
display: inline;
width: 2%;
height: 150px;
margin-bottom: 20px;
background-color: #7fc06d;
}
.news_box{
float: left;
display: inline;
width: 98%;
height: 150px;
margin-bottom: 20px;
padding: 25px 30px;
background-color: #f2f6f1;
}
.news_space{
margin-top: 80px;
}
.times{
float: left;
display: inline;
width: 100%;
margin: auto 0;
}
.news_title_box{
float: left;
display: inline;
width: 100%;
margin: auto 0;
}
.news_arrow{ display: none !important; }


/* flow */
.flow_frame{
width: 100%;
box-shadow: 0 0 8px rgb(182, 182, 182);
margin-top: 60px;
}
.flow_edge_line{
float: left;
display: inline;
width: 3%;
height: 800px;
background-color: #b8b8b8;
}
.flow_text_box{
float: left;
display: inline;
width: 97%;
height: 800px;
padding: 70px 40px;
}
.flow_01{
background-image: url(../img/flow_01.png);
background-repeat: no-repeat;
background-size:contain;
height:290px; 
}
.flow_02{
background-image: url(../img/flow_02.png);
background-repeat: no-repeat;
background-size:contain;
height:290px;  
}
.flow_03{
background-image: url(../img/flow_03.png);
background-repeat: no-repeat;
background-size:contain;
height:290px;  
}
.flow_04{
background-image: url(../img/flow_04.png);
background-repeat: no-repeat;
background-size:contain;
height:290px;  
}
.flow_05{
background-image: url(../img/flow_05.png);
background-repeat: no-repeat;
background-size:contain;
height:290px;  
}
.flow_pic_box{
float: left;
display: inline;
width: 97%;
height: 300px;
text-align: right;
}
.flow_pic_box img{
width: 100%;
height: 300px;
}
.flow_title{
font-weight: bold;
font-size: 20px;
}
.flow_title_ud{
margin-top: 5px;
width: 100px;
height: 10px;
background-color: #7fc06d;
}
.flow_text{
margin-top: 20px;
}

/* news_list */
.news_list_frame{
width: 100%;
margin-top: 60px;
overflow: hidden;
box-shadow: 0 0 8px rgb(182, 182, 182);
}
.news_list_edge_line{
float: left;
display: inline;
width: 2%;
height: 600px;
background-color: #b8b8b8;
padding-bottom: 1000px;
margin-bottom: -970px;
}
.news_list_right{
float: right;
display: inline;
background-color: white;
width: 98%;
padding-bottom: 1000px;
margin-bottom: -970px;
}
.clear_sp{
clear: both;
margin: 0px;
padding: 0px;
}
.news_list_text_box{
float: none;
display:block;
width: 98%;
height: 300px;
padding: 20px 30px;
}
.news_list{
background-image: url(../img/bg_greeting.png);
}
.second_title{
font-size: 28px;
margin: 30px 0 50px;
text-align: center;
}
.second_title_cap{
font-size: 16px;
}
.bg_white{
background-color: #fff;
}
.time{
font-size: 12px;
font-weight: lighter;
}
.news_list_pic_box{
float: none;
display: block;
width: 100%;
height: auto;
text-align: center;
text-align: center;
}
.news_list_pic_box img{
width: auto;
width: 85%;
height: auto;
margin: 25px 20px;
}
.news_list_title{
font-weight: bold;
font-size: 20px;
}
.news_list_title_ud{
margin-top: 5px;
width: 100px;
height: 10px;
background-color: #7fc06d;
}
.news_list_text{
margin: 20px 0;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4; /* 任意の行数を指定 */
}

/* news detail */
.news_title{
padding: 25px 20px;
}
.news_detail_pic{
width: 100%;
margin: 50px 0;
}
.news_detail_pic img{
width: 100%;
}
.news_detail_text{
margin-top: 20px;
}

/* member */
.member_frame{
padding: 50px 30px 40px;
}
.member_detail_pic{
width: 100%;
}
.member_detail_pic img{
width: 100%;
}
.member_text_box{
padding: 40px 0px;
width: 100%;
}
.member_title{
font-size: 12px;
font-weight: lighter;
}
.member_item{
margin: 10px 0;
word-wrap: break-word; /* 単語の途中でも改行 */
}
.item_green{
font-size: 13px;
color: #7fc06d;
}

.pre_next{
padding-top: 70px;
}
.previous{
width: 50%;
border: solid white 1px;
/* 前の記事がない時に横幅を維持するため、borderを入れている　*/
}
.previous img{
margin-right: 30px;
}
.next{
width: 50%;
}
.next img{
margin-left: 30px;
}

    
/* footer */
.footer{
background-color: #6a6a6a;
}
.footer_margin{
padding: 40px 0;
}
.footer_logo{
width: 100%;
height: auto;
}
.footer_box{
float: left;
display: inline;
width: 46%;
margin:0 2%;
}
#btn_contact_footer{
border-radius: 100px;
display: block;
width: 50%;
padding: 15px;
box-sizing: border-box;
color: #5b5b60;
text-decoration: none;
text-align: center;
position:absolute;
right: 0px;
}
#btn_contact_footer::after { /* 三角形の表示設定 */
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0;
right: 18px;
width: 0;
height: 0;
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 10px solid #5b5b60;
}
.bg_white{
background-color: #fff;
}
.contact_box_tb{
height:350px ;
}
.footer_copy{
width: 100%;
text-align: center;
font-size: 12px;
color: #fff;
}

.right{
margin-right: 0px;
}



.scroll{
margin-top: 50px;
font-size: 16px;
letter-spacing: 0.1em;
}
.scroll_arrow{
margin: 5px;
}




/* スマートフォンの画面幅が350px以下の時 */
@media only screen and (max-width: 350px) { 
/*menu_trigger*/
.menu-trigger {
  top: 5px;
  right:5px;}
.small_h2{
font-size: 13px;
}
/* company */
.okuyama_greeting_box{
margin: 80px 0px 150px;
height: 840px;
}
.okuyama_greeting{
top: 40px;
}
}