@charset "UTF-8";

@media only screen and (max-width:960px){

body { min-width:375px; font-size:100%;}
#content{ margin-bottom: 100px; width:100%;}
#footer { width:100%;}
#header { height: 70px;  }
#header h1 { padding: 18px 0 0 20px; }
#header h1 img { width: auto; height: 35px; }
#wrapper { /*background:#FFF;*/ border-top:none;}
#base { width:auto; margin:0 !important; overflow:initial; }
#page a { bottom:10px; right:5px; }
#page a,
#page a span { width:109px; height:69px;}
.pc { display:none;}
.sm { display:block;}

.slick-dots {
  width: 100%!important;
}
.slick-dots li button::before {
  font-size: 12px!important;
}
.slick-dots li.slick-active button:before{
  color:#0A8242!important;
}
#subpage .content_inner {
  margin: 100px auto 0;
  width: 90%;
  display: block;
} 
#subpage .contents {
  width: 100%;
}
#subpage .contents .pagination ul {
  flex-wrap: wrap;
}
#subpage .contents .pagination ul li {
  margin: 0 5px 20px;
} 
#subpage .contents .pagination ul li a {
  padding-top: 11%;
  font-size: 1rem;
  width: 40px;
  height: 40px;
}
#toppage h2 {
		margin-bottom: 40px;
		font-size: 1.625rem;
	} 
#toppage section {
  margin-bottom: 30px;
}
span.cat {
	padding: 2px 10px 2px;
	font-size: 1rem;
}
.button a {
  font-size: 1rem;
}

.last td:last-child {
  border-bottom: solid 1px #ccc;
  width: 100%;
}
.tbl-r02 {
  width: 80%;
}
.tbl-r02 th,
.tbl-r02 td {
　　border-bottom: none;
  display: block;
  width: 100%;
}
.youtube__aspect-ratio {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.youtube__aspect-ratio iframe {
    width: 100%;
    height: 100%;
}

/*====================================================================================================
  NAVIGATION
====================================================================================================*/
#g-nav{
	/*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
	position:fixed;
	z-index: -1;
	opacity: 0;/*はじめは透過0*/
  /*ナビの位置と形状*/
	top:0;
	width:100%;
  height: 100vh;/*ナビの高さ*/
	background:#0A8242;
  /*動き*/
	transition: all 0.3s;
}		
/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive{
	opacity: 1;
	z-index:999;
}
/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999; 
  width: 100%;
  height: 100vh;/*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
/*ナビゲーション*/
#g-nav ul.spgnav-menu {
  display: none;
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top:50%;
  left:50%;
  transform: translate(-50%,-50%);
}
#g-nav.panelactive ul {
  display: block;
}
/*リストのレイアウト設定*/
#g-nav-list div { 
	padding: 18px 0 0 20px;
}
.spgnav-menu ul {
	margin: 5px auto;
  width: 85%;
}
.spgnav-menu li a {
	color: #FFF;
	text-decoration: none;
	padding:12px 15px;
	display: block;
	text-transform: uppercase;
	/*letter-spacing: 0.1em;*/
	font-size: 1.125rem;
}
.spgnav-menu li:nth-last-child(2) {
	margin-top: 40px;
}
.spgnav-menu li a.arrow{
  color: #FFF;
}
.spgnav-menu li a.arrow::after{
	width: 12px; 
  height: 12px;
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
}
.spgnav-sns ul {
	margin-bottom: 60px;
  display:flex!important;
  align-items: center;
	justify-content: center;
	flex-flow:wrap;
}
.spgnav-sns ul li {
	padding: 0 15px;
	width: 50%;
}
.spgnav-sns ul li:first-child {
	text-align: right;
}
.spgnav-sns ul li img {
	width: auto;
	height: 40px;
}
.spgnav-sns ul li:last-child {
	margin-top: 5px;
	flex-grow: 2;
	text-align: center;
	color: #FFF;
	font-size: 0.8125rem;
	font-weight: bold;
	letter-spacing: 0.1em;
}
/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
  z-index: 9999;/*ボタンを最前面に*/
	top:12px;
	right: 20px;
	cursor: pointer;
  width: 50px;
  height:50px;
}
/*×に変化*/	
.openbtn span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 14px;
  height: 3px;
  border-radius: 2px;
	background-color: #0A8242;
  width: 30px;
  }
.openbtn span:nth-of-type(1) {
	top:15px;	
}
.openbtn span:nth-of-type(2) {
	top:23px;
}
.openbtn span:nth-of-type(3) {
	top:31px;
}
.openbtn.active span:nth-of-type(1) {
  top: 18px;
  left: 18px;
  transform: translateY(6px) rotate(-45deg);
  width: 30px;
	background-color: #FFF;
}
.openbtn.active span:nth-of-type(2) {
	opacity: 0;
	background-color: #FFF;
}
.openbtn.active span:nth-of-type(3){
  top: 30px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 30px;
	background-color: #FFF;
}
  


 
  
/*====================================================================================================
  TOP PAGE
====================================================================================================*/
/* MAINIMG */
#toppage .mainimg {}
#toppage .mainimg img { width:100%; }

/* TOP MAIN-IMG */
#toppage .mainimg.sm { position:relative; overflow:hidden; }
#toppage .mainimg.sm img:not(:first-child) { position:absolute; z-index:100; height:auto;}
#toppage .mainimg.sm img.sub1 { width:11.5vw;  top:34vw;   left:24vw; }
#toppage .mainimg.sm img.sub2 { width:5vw;     top:28.5vw; left:78.5vw; }
#toppage .mainimg.sm img.sub3 { width:12vw;    top:13.5vw; left:86.25vw; }
#toppage .mainimg.sm img.sub4 { width:8.5vw;   top:37.5vw; left:65.5vw; }
#toppage .mainimg.sm img.sub5 { width:13.25vw; top:40.5vw!important; left:1.75vw; }
#toppage .mainimg.sm img.sub6 { width:12vw;    top:6vw;    left:4.5vw; }
#toppage .mainimg.sm img.img-tree { width:7.5vw;   bottom:0;   left:67vw; z-index:120; }


.machine ul.machine_pager .next a:hover img { left:0; filter: alpha(opacity=70);-moz-opacity:  0.7;opacity:  0.7;}
.machine ul.machine_pager .prev a:hover img { left:0; filter: alpha(opacity=70);-moz-opacity:  0.7;opacity:  0.7;}
.machine ul.machine_pager .next a:active img { left:12px;}
.machine ul.machine_pager .prev a:active img { left:-12px;}
.machine ul.machine_pager li a:hover { color:#222;}
.machine ul.machine_pager li a:active { color:#0A8242;}


/* 右上ショベルカー（sub3）のアニメーション */
#toppage .mainimg.sm img.sub3{
	/*animation:left-right 2s linear infinite;*/
	animation-name:left-right;
	animation-duration:3s;
	animation-timing-function:linear;
	animation-iteration-count:infinite;
	transform-origin:center bottom 0;
}
/* 左下ショベルカー（sub5）のアニメーション */
#toppage .mainimg.sm img.sub5{
	/*animation:left-right 2s linear infinite;*/
	animation-name:front-back;
	animation-duration:5s;
	animation-timing-function:linear;
	animation-iteration-count:infinite;
}
.scrolldown {
  /*margin-bottom: 60px;*/
	display:none;
}

#subpage .page_head {
	background-image: none;
}
#subpage #contact .page_head .wrap > div div:last-child,
#subpage #sitemap .page_head .wrap > div div:last-child,
#subpage #privacy .page_head .wrap > div div:last-child  {
	margin: 0 auto;
}
#subpage #contact .page_head .wrap > div div:last-child img,
#subpage #sitemap .page_head .wrap > div div:last-child img,
#subpage #privacy .page_head .wrap > div div:last-child img  {
	height: 35px;
}
#subpage .page_head h2 {
  text-align: center;
  font-size: 1.625rem;
}
#subpage .page_head .wrap {
  padding-top: 0;
	width: 100%;
}
#subpage .page_head .wrap p {
  margin: 0 auto;
  width: 85%;
  text-align: left!important;
  font-size: 1rem;
}
#subpage .page_head .wrap > div {
  padding-top: 20px;
  background-color: #C8D743;
}
#subpage .page_head .wrap > div h1 {
  margin: 30px auto 20px;
  width: 90%;
  font-size: 1.75rem;
}
#subpage .page_head .wrap > div div {
  width: 85%;
}
#subpage #privacy .page_head .wrap > div div {
  margin-left: 0;
  width: 100%;
}
#subpage .page_head .wrap > div div:first-child {
  margin: 0 auto;
}
#subpage .page_head .wrap > div div:last-child {
  margin-left: 20px;
}
#subpage .page_head .wrap > div div img {
  width: 100%!important;
  height: auto;
  vertical-align: bottom;
}
#subpage .pankuzu {
  margin: 20px auto 40px;
  width: 90%;
  font-size: 0.875rem;
  flex-wrap: wrap;
}

.pankuzu li::after {
  padding-left: 40px;
  width: 8px;
height: 13px;
}
#subpage .button {
	width: 80%;
}
#subpage .pagenav ul {
	margin: 60px auto;
	width: 90%;
	flex-wrap:wrap;
  align-items: center;
  justify-content: space-between;
}
#subpage .pagenav ul li {
  margin: 0 0 15px;
	width:47.5%;
}
#subpage .pagenav li a {
	padding: 20px 0;
}
#subpage section h2 {
  font-size: 1.625rem;
  line-height: 1.5;
}
#subpage section h2 span {
  display: block;
  color: #919191;
  font-size: 1rem;
}


/*====================================================================================================
  ABOUT
====================================================================================================*/ 	
#subpage .management {
  margin-bottom: 120px;
  padding-top: 50px;
}
#subpage .management p {
  margin-top: 20px;
}
#subpage #about .management .box_1 {
  margin: 60px auto 150px;
  width: 85%;
  display: block;
}
#subpage .management .inner ul {
  display: block;
}
#subpage .management .box_1 div:nth-child(2),
#subpage .management .box_2 li:nth-child(1) div,
#subpage .management .box_3 li:nth-child(2){
  width: 100%; 
}	
#subpage .management .box_1 img, #subpage .management .box_2 img {
  width: 100%;
}	
#subpage .management .inner ul {
	margin-top: 60px;
  display: flex;
	flex-wrap: wrap;
}
#subpage .management .box_2 {
  margin: 0 auto;
}
#subpage .management .box_2 .inner li:nth-child(2),
#subpage .management .box_3 .inner li:nth-child(1) {
	margin-bottom: 40px;
  width: 100%;
  background: none;
  height:  auto;
	text-align: right;
  order: 1;
}
#subpage .management .box_3 .inner li:nth-child(1) {
	text-align: left;
}
#subpage .management .box_2 .inner li:nth-child(1),
#subpage .management .box_3 .inner li:nth-child(2) {
  width: 100%;
	margin: 0 auto;
	width: 85%;
  order: 2;
}
#subpage .management .box_2 .inner li:nth-child(2) img,
#subpage .management .box_3 .inner li:nth-child(1) img {
	width: 92%;
	height: auto;
}
#subpage .management .box_3 .inner li:nth-child(2) h3 {
	display: block;
}
#subpage .management .box_3 .inner li:nth-child(2) h3 span {
	margin-left: 0;
	display: block;
}
#subpage .works h2 {
  position: relative;  
}
#subpage .works h2 + div img {
  position: absolute;
  top: 95px;
  left: 5%;
}
#subpage .works ul {
	margin: 60px auto;
	width: 90%;
}  
.works ul li div.works_box {
  margin: 0 auto;
	width: 90%;
}
.works ul li img {
	width: 100%;
	/*height: 320px;*/
	height:281px;
	border-radius: 80px 0 0 0;
	object-fit: cover;
}
#subpage .works ul li a > div img {
transition: unset;
}
#subpage .works ul li a > div:hover img {
  transform: none;
}
#subpage .company {
  margin-bottom: 30px;
}
#subpage .company h2 + div img {
  right: 5%;
  width: auto;
  height: 100px;
}
#subpage .company .table_wrap {
  margin: 0 auto;
  width: 90%;
  overflow-x: scroll;
}
#subpage .company table {
  margin-bottom: 30px;
  width: 100%;
  white-space: nowrap;
}
#subpage .company table th,
#subpage .company table td {
  padding: 20px;
  width: 100%;
}
#subpage .company table th {
  border-bottom: none;
  padding-bottom: 0;
}
#subpage .company table tr:nth-child(1) td {
  border-top: none;
}
#subpage .company table td {
  padding-top: 5px;
}
#subpage .company table td a {
  margin-left: 0;
}
#subpage .enkaku h2 + div img {
  top: -90px;
  left: 50px;
  width: auto;
  height: 90px;
}
#subpage .enkaku .timeline {
  margin: 60px auto 0;
  padding: 60px 0;
  width: 90%;
  background-color: #FFF;
  border-radius: 80px 0 0 80px;
}
#subpage .enkaku ul {
  margin: 0 auto;
  width: 90%;
}
#subpage .enkaku .timeline ul li {
  display: flex;
}
.timeline ul li .timeline_boder {
  margin-left: 20px;
}
#subpage .enkaku .timeline_date {
  text-align: right;
  white-space: nowrap;
}
#subpage .enkaku .timeline_date span {
  /*font-size: 1.75rem;*/
	font-size:1.5rem;
}
#subpage .enkaku .timeline_content {
  /*margin-left: 20px;*/
	margin-left: 18px;
  padding: 15px 0 10px 0;
  display: block;
	font-size:15px;
}
#subpage .enkaku .timeline ul li:nth-child(3) p:last-child {
  margin-top: 10px;
}
#subpage .access h2 + div img {
  top: -100px;
  right: 7%;
  width: auto;
  height: 120px;
}
#subpage .access ul {
  margin: 60px auto 0;
  width: 90%;
  display: block;
}
#subpage .access ul li iframe {
  margin-bottom: 10px;
  width: 100%;
  height: 400px;
} 
#subpage .access dl {
    margin-top: 0;
}
#subpage .access dl dt:nth-child(3) img {
    width: 21px;
}  
  
  
/*====================================================================================================
  RECRUIT
====================================================================================================*/  
#subpage #recruit .beginning ul {
  margin: 60px auto 0;
  width: 90%;
  display: block;
}  
#subpage #recruit .beginning ul li img {
  width: 100%;
}
#subpage #recruit .beginning ul li h2 {
  margin: 30px 0 0;
}
#subpage #recruit .beginning ul li p {
  font-size: 1rem;
  font-weight: bold;
}
#subpage #recruit .movie {
  padding: 60px 0;
  background-size: 100%;
}
#subpage #recruit .movie div video {
  width: 80%;
  height: auto;
}
#subpage #recruit .voice {
  padding: 60px 0 90px;
  background: linear-gradient(180deg, #FFF 0%, #FFF 2.5%, #E2E2E2 2.5%, #E2E2E2 100%);
  display: block;
  width: 100%;
  height: 100%;
}
#subpage #recruit .voice div h2 + ul {
  margin: 80px auto 0;
  width: 85%;
  display: block;
}
#subpage #recruit .voice h2 + ul li {
  width: 100%;
}
#subpage #recruit .voice_box {
	padding-right: 20px;
	width: 100%;
}
#subpage #recruit .voice_title {
  padding: 0 10px;
  font-size: 1.25rem;
}
#subpage #recruit .voice_box ol {
  margin-top: 30px;
} 
#subpage #recruit .voice_box_wrap {
  width: 100%;
	padding: 0;
}  
#subpage #recruit .voice_box2 {
	padding-left: 0;
	width: 100%;
}  
#subpage #recruit .voice_title2 {
  margin-bottom: 200px;
}
#subpage #recruit li:nth-child(1) .voice_title2,
#subpage #recruit li:nth-child(2) .voice_title2 {
  margin: 0 auto;
}
#subpage #recruit .voice_box_wrap.suguru .voice_title2 {
  padding: 0;
}
#subpage #recruit .voice_box_wrap.kohei { 
  background-position: top 70px center;
	background-size: 80%
}
#subpage #recruit .voice_box_wrap.yukinobu {
  background-position: top 70px center;
	background-size: 80%
}
#subpage #recruit .voice_box_wrap.toshiko {
  background-position: top 50px center;
	background-size: 80%
}
#subpage #recruit .voice_box_wrap.yugo {
  background-position: top 50px center;
	background-size: 80%
}
#subpage #recruit .voice_box_wrap.syoji {
  background-position: top 50px center;
	background-size: 80%
}
#subpage #recruit .voice_box_wrap.suguru {
	background-position: top 120px center;
	background-size: 80%
}
#subpage #recruit .voice_box_wrap.ryuji {
  background-position: top 70px center;
	background-size: 80%
}
#subpage #recruit .voice_box_wrap.kohei .voice_title2	{
  margin-bottom: 230px;
}
#subpage #recruit .voice_box_wrap.yukinobu .voice_title2	{
  margin-bottom: 230px;
}
#subpage #recruit .voice_box_wrap.toshiko .voice_title2	{
  margin-bottom: 210px;
}
#subpage #recruit .voice_box_wrap.yugo .voice_title2 {
  margin-bottom: 200px;
}
#subpage #recruit .voice_box_wrap.syoji .voice_title2 {
  margin-bottom: 210px;
}
#subpage #recruit .voice_box_wrap.suguru .voice_title2 {
  padding: 10px;
}
#subpage #recruit .voice_box_wrap.ryuji .voice_title2 {
	margin-bottom: 240px;
}
#subpage #recruit .suguru .voice_box2 {
  margin-top: 230px;
}
#subpage #recruit .voice h2 + ul li:nth-child(1) {
	position:static;
}
#subpage #recruit .voice_box2 ol li {
  padding-bottom: 20px;
}
#subpage #recruit .voice h2 + ul li:nth-child(1) .voice_pic {
  margin-top: 60px;
  text-align: center;
}
#subpage #recruit .voice h2 + ul li:nth-child(1) img {
  position: static;
}
#subpage #recruit .guideline {
  padding-top: 80px;
}
#subpage #recruit .guideline h3 {
  margin: 80px auto 30px;
  width: 90%;
  font-size: 1.3125rem;
  line-height: 1.7;
}
#subpage #recruit .guideline table {
  width: 90%;
}
#subpage #recruit .guideline:last-child table {
  margin-bottom: 0;
} 
#subpage #recruit .guideline table th,
#subpage #recruit .guideline table td {
  /*padding: 20px 5px;*/
  display: block;
  width: 100%;
}
#subpage #recruit .guideline table th { padding: 20px 20px 0; border:none;}
#subpage #recruit .guideline table td { padding: 5px 20px 20px;}
#subpage #recruit .guideline table tr:nth-child(1) th  {
  /*border-top: 2px solid #707070;
  border-bottom: 2px solid #4EB27D;*/
	border:none;
}
#subpage #recruit .guideline table tr:nth-child(1) td {
  border-top: none;
}  
#subpage #recruit .guideline .button {
  width: 90%;
}  
  
  
  
/*====================================================================================================
  STAFF
====================================================================================================*/   
#staff .page_head .wrap > div div:last-child img {
  width: 70%;
  height: auto;
}
#subpage #staff .gallery ul,
#subpage .gallery .gallery-area {
  margin: 60px auto 0;
  width: 90%;
}
#subpage #staff .gallery ul li {
  width: 50%;
}
#subpage .gallery .gallery-area {
  width: 100%;
}

  
/*====================================================================================================
  MASCHINE
====================================================================================================*/    


  
/*====================================================================================================
  GENBA-NOTE
====================================================================================================*/    

  
/*====================================================================================================
  CONTACT
====================================================================================================*/  
#subpage #contact .phonenumber {
  margin: 30px auto 20px;
	padding: 30px 20px 20px;
	width: 85%;
}
#subpage #contact .phonenumber div {
	margin-bottom: 5px;
  font-size: 1.725rem;
}
#subpage #contact .phonenumber div a {
	color: #222;
  text-decoration: none;
}
#subpage #contact .phonenumber p {
  line-height: 1.5;
}
#subpage #contact .phonenumber + ul.attention {
	width: 85%;
  font-size: 0.875rem;
	padding:0;
}
#subpage #contact hr {
  margin: 30px auto;
	width: 80%;
}
#subpage #contact dl {
	width: 80%;
}
#subpage #contact dl dt {
  margin-bottom: 10px;
  width: 100%;
	clear: both;
}
#subpage #contact dl dt span {
  margin-left: 10px;
  padding: 0 7px 1px;
  float: none;
  font-size: 0.875rem;
}
#subpage #contact dl dd {
  padding-left: 0;
	clear: both;
  display: block;
}
#subpage #contact dl dd div {
  margin: 10px 0;
}
#subpage #contact input[type="text"],
#subpage #contact input[type="email"],
#subpage #contact input[type="tel"],
#subpage #contact textarea {
  width: 100%;
  font-size: 16px;
}
#subpage #contact .button{
	margin: 30px auto -40px;
}
#subpage #contact .button input[type="submit"]{
	width: 100%;
}
  

  
/*====================================================================================================
  ABOUT
====================================================================================================*/  
  #toppage .about {
    width: 100%;
    display: inline-flex;
    flex-wrap: wrap;
	  padding-top:0;
  }
	#toppage .about h2 {
    font-size: 1.625rem;
		margin-top:30px;
  }
  #toppage .about div:nth-child(1) {
    margin: 10px auto 20px; 
    width: 95%;
    order: 2;
  }
  #toppage .about div div:nth-child(2) {
    bottom: -40px;
    left: 0px;
  }
  #toppage .about div:nth-child(1) img {
    width: 100%;
  }
  #toppage .about div:nth-child(2) {
    margin: 0 auto; 
    width: 90%;
    order: 1;
  }
  #toppage .about div:nth-child(3) {
    margin: 50px auto 0; 
    width: 90%;
    order: 3;
  }
  #toppage .about p {
    font-size: 1rem;
  }
  #toppage .about .about_text {
    width: 100%;
  }  

  
  
  
/*====================================================================================================
  MOVIE
====================================================================================================*/  
  #toppage .movie {
    padding: 60px 0 30px;
  }
	#toppage .movie h2 {
    line-height: 1;
  }
  #toppage .movie .videos ul {
    margin: 0 auto;
    width: 90%;
    display: block;
  }
  #toppage .movie .videos ul li {
    margin-bottom: 40px;
    width: 100%;
  }
  #toppage .movie .videos ul li p {
		margin-top: 10px;
    font-size: 1rem;
		line-height: 2;
	}
  
/*====================================================================================================
  INFORMATION
====================================================================================================*/  
#toppage .information {
  margin: 60px auto 100px;
  padding: 0;
  width: 100%;
}
#subpage #information .page_head img {
  width: 100%;
}
#toppage  .information ul li a,
#subpage  #information .contents ul.post_list li a {
  padding: 20px;
  display: block;
  color: #222;
  line-height: 2.5;
}
#toppage .information ul li a span,
#subpage  #information .contents ul.post_list li a span,
#subpage #information .post_info span {
  margin-left: 8px;
  font-size: 0.875rem;
}
#toppage .information div {
  margin-left: 50px;
  width: 100%;
}
#toppage .information div.button {
  margin: 60px auto;;
  width: 90%;
}
#subpage #information .content_inner {
  margin: 50px auto 0;
}
#subpage .sidebar {
  padding:inherit;
  width: 100%;
  background-color: #FFF;
  text-align: center;
}
.select-wrap{
  margin-bottom: 50px;
  display:inline-block;
  width:80%;
  border:2px solid #222;
  position: relative;
}
.select-wrap select{
  appearance:none;
  appearance:none;
  position:relative;
  z-index:2;
  display:block;
  width:200%;/* fallback non calc support */
  width:-webkit-calc(100% + 5em);
  margin:0;
  padding:11px 35px 11px 11px;
  background:transparent;
  border:0;
  outline:none;
  line-height:1.5;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  width: 100%;
}
.select-wrap::after{
  position: absolute;
  top: 40%;
  right: 20px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #0A8242;
	overflow:hidden;
}
#subpage #information img {
  margin: 0;
  width: 100%;
}
#subpage #information .post_info h1 {
    font-size: 1.3rem;
}
#subpage #information .post_content h2 {
  font-size: 1.1rem;
}
#subpage #information .post_content h3 {
  font-size: 1.0rem;
}
#subpage #information .post_content h4 {
  margin: 60px 0 20px;
  font-size: 1.0rem;
}
#subpage #information .post_photo img {
  width: auto;
  max-width: 100%;
  height: auto;
}
#subpage #information .quote_box {
  margin: 50px auto;
  background: #f8f8f8;
  padding: 50px 30px 50px 40px;
  line-height: 200%;
  letter-spacing: 0.1em;
  position: relative;
}  
#subpage #information .quote_box::before,
#subpage #information .quote_box::after {
  background-size: auto;
  background-size: 60% auto;
}  
#subpage #information .post_content ul li {
  margin-bottom: 20px;
  line-height: 1.8;
}  


/*====================================================================================================
  STAFF
====================================================================================================*/
  #toppage .staff h2 {
  margin-bottom: 60px;
}
  #toppage .staff h2 + div {
    width: 100%;
    text-align: center;
  }
  #toppage .staff h2 + div img {
    margin-top: 10px;
    position:inherit;
  }
  #toppage .staff ul {
    margin: 40px auto 0;
    width: 90%;
    display: block;
  }
  #toppage .staff ul:nth-child(1) li {
    width: 100%;
  }
  #toppage .staff .staff_img_sp {
    margin: 0 auto;
    width: 90%;
    position: relative;
  }
  #toppage .staff .staff_img_sp img {
    width: 100%;
    height: auto;
  }
  #toppage .staff .staff_text img  {
    position: absolute;
    top: 80px;
    left: 37%;
  }
	
  
/*====================================================================================================
  MASCHINE
====================================================================================================*/ 
	#toppage .machine {
		margin-top: 80px;
  }
	#toppage .machine h2 {
		margin-bottom: 60px;
  }
  #toppage .machine h2 + div {
		margin-bottom: 30px;
    text-align: center;
  }
  #toppage .machine h2 + div img {
    margin-top: 10px;
    position:inherit;
  }
  #toppage .machine .inner {
    margin-top: 40px;
    background:none;
    display: block;
    height: auto;
  }
  #toppage .machine .sliderArea {
    width: 100%;
    background: url("../../image/top/machine_bg.svg") no-repeat right top 50px;
  }
  #toppage .machine .inner ul {
    width: 100%;
    display: block;
  } 
  #toppage .machine .inner ul li:nth-child(1) {
    width: 99%;
    padding: 0;
    text-align: center;
  }
  #toppage .machine .inner ul li:nth-child(1) img {
    width: 90%;
    height: 225px;
		margin: 0 auto;
  }
   #toppage .machine_text {
    top: 90px;
  }
  #toppage .machine .inner ul li:nth-child(2) {
    margin: 0 auto;
    padding-top: 20px;
    width: 90%;
  }
  #toppage .machine ul.machine_pager {
    margin: 40px auto 80px;
  }
	#toppage .machine .machine_post_title {
		font-size: 1.25rem;
		line-height: 1.7;
    margin-top: 10px
}
  #toppage .machine .inner ul li:nth-child(1) div.machine_text img  {
    height: 18%;
		left: 0;
  }
  #toppage .staff div.button {
    margin: 60px auto;
    width: 90%;
  }
  #toppage .machine .inner ul li:nth-child(2) {
    margin: 0 auto!important;
    width: 90%!important;
  }
  #toppage .machine div.button {
    margin: 30px auto 0;
    width: 90%;
  }
	#toppage .machine time {
		margin-top: 10px;
    display: block;
  }
  
  
/*====================================================================================================
  GENBA NOTE
====================================================================================================*/
	#toppage .genba_note {
  padding: 60px 0;
}
  #toppage .genba_note h2 + div img {
    top: 70px;
    right: 10px;
  }
  #toppage .genba_note ul {
    margin: 60px auto;
    width: 100%;
    display: block;
  }
  #toppage .genba_note ul li {
    margin-bottom: 40px;
    width: 100%;
		background-color: #e2e2e2
  }
	#toppage .genba_note ul li .genba_noto_post_box {
		background-color: #FFF;
		border-bottom-right-radius: 80px;
  }
  #toppage .genba_note ul li img {
    width: 100%;
  }
  #toppage .genba_note ul li a > div img {
    transition: unset;
	  aspect-ratio:38 / 32;
  }
  #toppage .genba_note ul li a > div:hover img {
    transform: none;
  }
  #toppage .genba_note div.button {
    margin: 0 auto;
    width: 90%;
  }
  .genba_note ul li div.genba_note_box {
		margin: 0 auto;
    width: 90%;
  }
	.genba_note .genba_noto_post {
    font-size: 1.125rem;
}
  .genba_note ul li img {
    width: 100%;
    height: 100%;
  }
  

  
/*====================================================================================================
  SUBPAGE: GENBA-NOTE / MASCHINE
====================================================================================================*/  
#subpage #genba_note .content_inner,
#subpage #machine .content_inner {
  margin: 50px auto 0;
}
#subpage #machine .page_head img, #subpage #genba_note .page_head img {
    width: 100%;
    margin: 0;
}
#subpage #genba_note .contents ul.post_list li a,
#subpage #machine .contents ul.post_list li a {
  margin-bottom: 10px;
  padding: 20px 0 30px;
  display: block;
}
#subpage #genba_note .contents ul li a .post_photo,
#subpage #machine .contents ul li a .post_photo {
  display: inherit;
  margin: 0 auto 5px;
  width: 100%;
  height: auto;
} 
#subpage #genba_note .contents ul li a .post_content,
  #subpage #machine .contents ul li a .post_content {
  width: 100%;
}
#subpage #genba_note .contents ul li a .post_content span,
#subpage #machine .contents ul li a .post_content span {
  font-size: 0.875rem;
}
#subpage #genba_note .contents ul li a .post_content .post_title,
#subpage #machine .contents ul li a .post_content .post_title {
  margin: 20px 0 10px;
  font-size: 1.25rem;
}
#subpage #genba_note .contents ul li a .post_content p,
#subpage #machine .contents ul li a .post_content p {
  font-size: 0.875rem;
}
#subpage #machine .sidebar img, #subpage #genba_note .sidebar img {
  margin: 0;
}
#subpage #machine .post_info h1, #subpage #genba_note .post_info h1 {
  font-size: 1.3rem;
}
#subpage #genba_note .post_content img, #subpage #machine .post_content img {
  width: 100%;
}
#subpage #genba_note .post_info span, #subpage #machine .post_info span {
  margin-left:  8px;
}

/*====================================================================================================
  RECRUIT
====================================================================================================*/ 
  #toppage .recruit {
    margin: 120px 0;
    background: none;
  }
	#toppage .recruit h2 {
		margin-bottom: 70px;
    font-size: 1.625rem;
  }
  #toppage .recruit .inner {
    margin: 0 auto;
    width: 90%;
  }
  #toppage .recruit .inner div:nth-child(1) img {
    top: 60px;
    left: 5%;
    height: 13%;
  }
  #toppage .recruit .inner h2 + div img {
    margin: 20px 0;
    width: 100%;
  }
  #toppage .recruit h2 {
    padding-top: 0;
    text-align: center;
  }
  #toppage .recruit .inner div:nth-child(2) img {
    top: 0;
    left: auto;
    right: 0;
  }
  #toppage .recruit div.button {
    margin: 40px auto 0;
    width: 100%;
  }
  #subpage #recruit .beginning ul li h2 {
    font-size: 1.625rem;
  }
  #subpage #recruit .movie h2 {
    margin-bottom: 20px;
  }
  #subpage #recruit .movie div {
    margin-top: 0;
  }	

	
/*====================================================================================================
  INSTAGRAM
====================================================================================================*/  
  #toppage .instagram {
    
  }
	#toppage .instagram div.button {
    width: 100%;
    margin-top: 0;
  }
	
	
	
  
/*====================================================================================================
  FOOTER
====================================================================================================*/  
  #footer { 
    padding: 60px 0 40px;
  }
  #footer .inner {
    margin: 0 auto;
    width: 80%;
    display: block;
  }
  #footer .inner div:nth-child(1),#footer .inner div:nth-child(2) {
    width: auto;
  }
  #footer .inner div:nth-child(1) div {
    margin-bottom: 30px;
    text-align: center;
  }
  #footer .inner div:nth-child(1) ul {
    margin-top: 30px;
  }
  #footer .inner div:nth-child(1) p {
    margin: 0 auto;
    display: table;
    line-height: 1.9;
    font-size: 0.9375rem;
  }
  #footer .f_address ul {
    margin-top: 30px;
    justify-content: center;
  }
  #footer .f_address p a {
    color: #FFF!important;
    text-decoration: none!important;
  }
  #footer .f_sns ul {
		margin: 0 auto;
  }
  #footer .f_sns ul li {
		font-size: 0.8125rem;
  }
  #footer .f_sns ul li:last-child {
    margin-top: 5px;
  }
  #footer .copy {
    font-size: 1.125rem;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.05rem;
    white-space: nowrap;
  }
  #footer ul.f_sitemap {
    width: 230px;
    margin: 40px auto 60px;
    display: block;
  }
  #footer ul.f_sitemap li {
    margin-bottom: 7px;
    padding-left: 0;
  }
  #footer ul.f_sitemap li:nth-last-child(2) {
    margin-top: 40px;
  }
  #footer ul.f_sitemap li a {
    display: block;
    font-size: 0.9375rem;
  }
  #footer ul.f_sitemap li a::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
	  width:8px;
	  height:8px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
  }
  
  
/*====================================================================================================
  PAGE
====================================================================================================*/  
#subpage #privacy .post_content, #subpage #sitemap .post_content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
}
  
  
  
  
  
  
  
  
  
}