@charset "UTF-8";
/*
Theme Name: saytosha
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.1.2
*/
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/

/* 
html5doctor.com Reset Stylesheetfp
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, h3:after, input {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}

html{
    font-size: 16px;
}
body {
  line-height: 1;
  background-repeat: no-repeat;
  overflow: hidden; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: inherit; }

a:focus, a:hover {
  text-decoration: none;
  color: inherit; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 3px solid #004ea2;
  margin: 0 -50px 20px;
  padding: 0; }

input, select {
  vertical-align: middle; }

img {
  display: block; }
f
a:focus, .page_top_btn {
  outline: none; }

/* Lightning Reset*/
.veu_adminEdit {
  display: none; }

ul.gMenu > li.current-menu-ancestor > a:after, ul.gMenu > li.current-menu-item > a:after, ul.gMenu > li.current-menu-parent > a:after, ul.gMenu > li.current-post-ancestor > a:after, ul.gMenu > li.current_page_ancestor > a:after, ul.gMenu > li.current_page_parent > a:after, ul.gMenu > li > a:hover:after {
  border: none; }

.input.form-control {
  margin-bottom: 0 !important; }

h3:after {
  border-bottom: none; }

.gMenu_name a:hover {
  border: none; }

.gMenu_name::after {
  border: none; }


/* -SASS-*/
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; 
}


/* Var */
:root {
--main-color: #83bf73;
--footer-color: #4d97c0;
--hover-color: #0488cc;
--dark-blue: #035985;
--emp-color: #bd5252;
--wh-color: #ffffff;    
--border-color:#57c2ff;
--top-height: 160px;    
}

/* Common */


h1, h2 {
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: bold;
  background-color: transparent;
  padding: 0;
  margin: 0;
  border: none; }

h1.page-header_pageTitle:first-child {
  margin: 0; }

h1.page-header_pageTitle {
  font-weight: bold; }

.container-fluid {
  padding: 0px; }

@media (min-width: 1024px) {
  .container {
    width: 83%; } 
}

@media (max-width: 800px) {
  #recruit .header-img {
    display: none; } 
}

@media (min-width: 1024px) {
  .siteContent {
    /*    padding: 70px 0 3.5em;*/ } }

.inner-txt {
  padding: 0 calc(100% * 90 / 1920); }

.inner{
    background-color: #ffffff;
    border: 1px solid var(--border-color);
    width: 85%;
    padding: 4rem 8rem;
    margin: 2rem auto;
}

.body-images img {
    display: block;
    width: 100%; }

.bottom-image {
    background-color: #000;
  /*        padding-bottom:300px;*/ }
  .bottom-image img {
    display: block;
    width: 100%; }

.header-img {
  margin-top: var(--top-height)!important;
  position: relative; 
}
  .header-img img {
    width: 100%; 
}
  .header-img .thumbnail-txt {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: 0;
    padding: 0;
    font-size: 22px;
    width: 55%; }
    .header-img .thumbnail-txt p .htxt {
      margin-top: 35px; }



.page-header {
  background: none;
  border: none;
  text-align: center;
  color: #000;
  margin-bottom: 60px; }

.page-header span {
  font-size: 18px;
  font-weight: bold;
  /*color: #5ba0e9;*/ }

.inner_content {
  background-color: #fff;
  margin: 0 auto 150px;
  padding: 30px 165px 150px; }
  @media (max-width: 480px) {
    .inner_content {
      text-align: center;
      padding: 0px 15px; } }

.inner_box {
  margin-bottom: 0px;
  /*
      margin-bottom: 70px;*/ }
  .inner_box p {
    font-size: 15px;
    line-height: 2;
    /*
        font-size: 17px;
    line-height: 2;
    letter-spacing: 0.7px;*/ }


.btn {
  font-weight: bold;
  font-size: 30px;
  letter-spacing: 20px;
  padding: 13px 5%;
  display: block;
  position: relative; }
  .btn a:after {
    /*
        font-family: 'Font Awesome 5 Free';
        content: "\f054";
        position: absolute;
        right: 10px;*/ }

hr {
  margin: 0 -50px 1em; }

h4 {
  font-size: 23px;
  letter-spacing: 1px;
  font-weight: bold;
  padding-left: 12px;
  line-height: 2;
  margin-bottom: 1.5em; }

/* Slider */
#top__fullcarousel {
  margin-top: 0px !important; }
#top__fullcarousel:first-child{
	background-color:#000;
}
.carousel{
    border-bottom:none;
}
.carousel-inner{
    /*margin-top:var(--top-height);*/
    margin-top: 120px;
}
.carousel-control.right, .carousel-control.left{
    background-image: none;
}
.carousel-indicators li{
	background-color:#000;
}

/* スライダーボタン調整*/

.slide .btn-ghost, .btn-ghost{
    display: inline-block;
    color: #ffffff;
    background-color: red;
    background-image: url(../../../assets/images/btn_contact_bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    height: 63px;
    font-size: 1.5rem;
    letter-spacing: 2px;
    padding: 1rem 4rem;
}

    @media (max-width: 480px) {
        .slide .btn-ghost{
        background-size: contain;
        height: 30px;
        font-size: 0.8rem;
        padding: .4em 2em;
        }
    }

.mini-content-1 {
    position: absolute;
    top:77%;
}

.mini-content-2 {
    position: absolute;

    top:77%;
    left: 40%;
}

.mini-content-3 {
    position: absolute;
    left: 53%;
    top:77%;
}

.mini-content-4 {
    position: absolute;
    top:77%
}

    @media (max-width: 480px) {
        .mini-content-1, .mini-content-2,.mini-content-3{
            text-align: center!important;
            left:50%;
            top:80%; 
            transform: translateY(-50%) translateX(-50%);
        }

}


/* Button */
.page_top_btn {
  border-radius: 50px;
  height: 60px;
  width: 60px;
  border: none;
  background-color: #004ea2; }

/* Class */

.m-flex2{
	display:flex;
	align-items:center;
	
	
}

.cols2 {
    column-count: 2;
}
.font-bold {
  font-weight: bold; }

.p0 {
  padding: 0px; }

.mb2 {
  margin-bottom: 20px !important
}

.mt5 {
  margin-top: 50px; }

.mt1 {
  margin-top: 10px !important; }

.m20{
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

.bg_gray{
	background-color: #f5f5f5;
}

/* Nav Bar*/

@media (min-width: 1024px) {
  .siteHeader .container {
    padding: 0; } 
}

.siteHeader.navbar {
    background-color: #ffffff;
    font-family: 'Noto Sans Japanese', sans-serif;
    height: var(--top-height);
    padding: 0px; 
    
}
    @media (max-width: 480px) {
       .siteHeader.navbar {
		   height: 50px ;
		   padding: 5px 0; } 
}
.navbar-header {
    display: flex;
    align-items: center;
    width: 100%;
    font-size: 2rem;
    justify-content: space-between;
    padding: 0;
    height:65px;
    margin-bottom: 10px;
}
.navbar-header:before{
    content: none;
}
.nav-bar-logo{
    width: 50%;
    display:flex;
    text-align: left;
    align-items: center;
}
.nav-bar-logo img{
    width: 250px;
}

    
.nav-bar-contact{
    width: 60%;
    display:flex;
    text-align: right;
    justify-content: flex-end;
}

.navbar-brand {
  padding: 0; 
	font-size: 1.8vw;
}
.navbar-brand img {
    width: auto; 
}

.nav-bar-pp{
    text-align: right;
}
.navbar-phone{
    text-align: right;
    font-size:1vw;
    margin: 0 15px;
    
}
.navbar-phone .phone{
    font-size: 2vw;
    font-weight: 700;
}




.sub-color{
    color: var(--hover-color);
}

.wh-color{
    color: var(--wh-color);
}



.top-section {
    background-size: cover;
    background-repeat: no-repeat; 
    position: relative;
    margin:0 auto;
    line-height: 0;
/*    padding-top: 50px;*/
}

.top-section img {
    margin:0 auto;
    width: 100%;
}
.top-section h2 {
    position: absolute;
    top: 4.5vw;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0 auto;
    text-align: center;
    font-size: 2rem;
    width: auto;
    font-weight: 700;
   
}
    @media (max-width: 480px) {
      .top-section h2 {
        font-size: 2vw; 
        top: 35px;
      } 
}


.top-section h2 span {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    line-height: 2; 
    letter-spacing: 3px;
}

.top-section .text{
    font-size: 28px;
    line-height: 2;
    color: #ffffff;
}
.top-section.point{
    padding-top:0;
}


.top-section.about{
    background-image: url("../../../assets/images/sayto_bg_12.jpg");
    background-size: cover;
    padding: 40px 0
}
.top-section.about img{
    width: 40%;
}

.top-section.about .container {
    display: flex;
    align-items: center;
 }
.top-section.about .text{
    padding-left: 45px;
    width: 50%;
    font-size: 2rem;
    line-height: 2;
}


.top-section.flow{
    background-image: url("../../../assets/images/flow_bg.png");
    padding-bottom: 160px;
    background-size: contain;
    
}
.top-section.flow .contents{
        padding-top: 175px;
}


/* Privacy */


#privacy .header-img{
    background-image: url("../../../assets/images/privacy-policy_sayto_02.jpg");

}

#privacy {
}

#privacy .inner {
    border: none;
}

#privacy  h3 {
    color: var(--hover-color);
    font-size: 27px;
    margin-bottom: 20px;
    font-weight: 700;
}

#privacy  h3::before {
    font-family: 'Font Awesome 5 Free';
    content: "\f192";
    padding-right: 10px;
}


#privacy p {
  font-size: 1.5rem;
   margin-bottom:75px;
}



/* Medical */


#medicalgrade .header-img{
    background-image: url("../../../assets/images/mg_sayto_02.jpg");

}

#medicalgrade div.md
{
}


/* Susta */


#sustapeek .header-img{
    background-image: url("../../../assets/images/sustapeek_sayto_02.jpg");
}

#sustapeek .btn-img{
    width: 20%;
    margin: 0 auto;
    position: absolute;
    top: 10%;
    left:50%;
        transform: translate(-50%, 0%);
}
#sustapeek .top-section{
    padding-top: 0;
}
#medicalgrade h1, #sustapeek h1{
  display: none;
}

.btn-img{
    width: 20%;
    margin: 0 auto;
}

.btn-mg{
    background-color: #ffffff;
    border: 1px solid #d93130;
    color: #d93130;
    display: flex;
    letter-spacing: normal;
    align-items: center;
    font-size: 2.5rem;
    
}

.btn-mg p{
    line-height: 1;
    padding: 10px 30px;
    font-size:1.5rem;
}
.btn-mg span{
    color: initial;
    font-size:70%;
    
}

/* Later */




/* Contents View */
.pt-cv-wrapper img {
    margin: 0 auto;
}

.pt-cv-content-item{
    margin-bottom: 80px;
}
.pt-cv-ifield{
    background-color: var(--hover-color);
}

.pt-cv-title {
    text-align: center;
}
h4.pt-cv-title {
    font-size: 1.5rem;
    color: #ffffff;
    padding: 20px 20px 30px 20px;
}


@media (max-width:480px){
    h4.pt-cv-title{
        font-size: 3.5vw;
        color: #ffffff;
        padding: 5px 5px 0;
        min-height: 35px;
    }
    .pt-cv-content-item{
        margin-bottom: 30px !important;
    }
}


.page {
    margin-top: 0;
}


.header-img{
    background-size: 100%;
    background-repeat: no-repeat;
    min-height:375px;
    position: relative;
    
}

  @media (max-width: 960px) {
    .header-img {
      min-height: 150px; 
	  }
}


  @media (max-width: 480px) {
    .header-img {
      margin-top: 50px !important; } 
}



@media all and (-ms-high-contrast:none){
  .header-img { 
	  margin-top:116px;
	} /* IE10 */
	.siteHeader.navbar{
		height: 160px;
	}
}

.header-img h1{
    font-family: 'Noto Serif', 'Sawarabi Mincho', serif;
    position:absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #ffffff;
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 1px;
    font-weight: 100;
	width:100%;
}

.header-img h1 span{
    font-size:1vw;
    line-height: 1;
}


/* Breadsection */
.breadSection {
  border: none; }
  @media (max-width: 480px) {
    .breadSection {
      display: none; } }
  .breadSection .container {
    padding: 0 3%; }

.breadSection .breadcrumb {
  padding: 15px 15px 0;
  font-size: 18px;
  letter-spacing: 0px; 
}

/* About */

#about .header-img{
    background-image: url("../../../assets/images/about_sayto_02.jpg");

}

#about .top-section{

    background-size:cover;

}


#about .top-section.company h2{

    top:3%;

}

#about .top-section h3{
    text-align: center;
    font-size: 3.5rem;
    line-height: 1;
    margin-bottom: 60px;
    letter-spacing: 5px;
    font-family: 'Noto Serif', 'Sawarabi Mincho', serif;
    font-weight: 100;
    color:#ffffff;
}
#about .top-section .text{
    text-align: center;
}


#about .top-section.rinen{
    background-image: url("../../../assets/images/about_sayto_05.jpg"); 
    display: flex;
    align-items: center;
    padding: 5vw 0;
    
}

#about .top-section.tekizai{
    background-image: url("../../../assets/images/about_sayto_17.png");
    min-height: 550px;
    color: #ffffff;
    background-size:cover;
    display: flex;
    align-items: center;

}

#about .top-section.company{
    display: flex;
    flex-direction: column;
    margin-bottom: 200px;
}


#about .company_info{
    margin-top: 180px;
    display: flex;
    justify-content: center;
    margin-bottom: 120px;
    justify-content: start;
}


#about .company_info table {
    width: 40%;
    font-size: 1.5rem;
}

#about .company_info table th {
    border-bottom: 1px solid #a7d0fd;
    font-weight: bold;
    padding: 20px 0; 
}
#about .company_info table td {
    border-bottom: 1px solid #a7d0fd;
    line-height: 1.5; 
    padding-right: 0;
}


#about table.company_addr {
    width: 50%;
}

#about table.company_addr th{
    border-bottom: none;
    padding: 0;
}

#about table.company_addr td{
    border-bottom: none;
}

#about table.group_company{
    width: 100%;
}

#about .gmap{
    position: absolute;
    bottom: 5%;
    z-index: 100;
    left: 30%;
}

#about .gmap a{
    color: #f5d808;
    font-weight: 700;
}


/* FDP */
#fdp .header-img{
    background-image: url("../../../assets/images/material-fdr_sayto_01.png");
}

/* Machine産業機械企画・製造 */
#machine .header-img{
    background-image: url("../../../assets/images/material-engineering_sayto_02.jpg");
}

#machine .top-section.machine{
    background-image: url("../../../assets/images/material-engineering_sayto_09.jpg");
	padding: 150px 0;
	background-size:100%;
}

#machine div.machine{
		padding: 25px 40px;
        word-break: keep-all;
	   min-height:250px;
	}
	
	#machine div.machine h3{
		border: 1px solid var(--hover-color);
        display: inline-block;
        padding: 1px 10px;
        color: var(--hover-color);
        font-weight: 700;
		margin-bottom: 25px;
	}

#machine .top-section.maintenance{
      display:flex;
}
#machine  div.machine-txt {
      padding:60px 80px 60px 40px;
}
#machine  .machine-txt > p, #machine .container > div > p{
      line-height: 2;
      font-size: 1.5rem;
	 padding-left: 1.5rem;
     text-indent: -1.5rem;
}


/* Top Business field*/ 
.top-section.business{
    background-image: url("../../../assets/images/business_bg.png");
  /*padding-bottom: calc(100%*1731/1920);/* calc(100*ImageHeight/ImageWidth)% */
}

.top-section.business .title{
   padding-top: 50px;
}

.top-section.business, .top-section.fdp{
    padding-top:0;
    
}

.top-section.business h2{
    padding-top: 0px;
    position: relative;
    top: 0;
    left: 0;
    color: #ffffff;
    text-align: center;
    transform: none;
    font-size: 5vw;
    padding-bottom: 50px
}



/* Process 各種加工品 */
[id*="processing"] .header-img{
    background-image: url("../../../assets/images/material-processing_sayto_02.jpg");
}

[id*="processing"] .top-section .process-title{
    display: flex;
    flex-direction: column;
    align-content: center;
}
[id*="processing"] .top-section h3{
   position: absolute;
    top: 250px;
    left: 50%;
    font-size: 1.5rem;
    transform: translate(-50%, -50%);
    font-weight: normal;
    text-align: center;
    width: 100%;
}

[id*="processing"] .top-section h2{

}
[id*="processing"] .top-section p {
    margin-bottom: 1rem;
	padding-left: 1em;
    text-indent: -1em;
    color: #ffffff;
}
 
 [id*="processing"] .top-section{
	position:relative;
	 background-size:100%;
}

 [id*="processing"] .top-section.plastic{
	background-image: url("../../../assets/images/material-processing_sayto_05.jpg");
    padding: 33% 20%;
}

 [id*="processing"] .top-section.metal{
	background-image: url("../../../assets/images/material-processing_sayto_06.jpg");
	 padding: 33% 20% 15% 20%;
}

 [id*="processing"] .top-section.rubber{
	background-image: url("../../../assets/images/material-processing_sayto_07.jpg");
	padding: 35% 20% 10% 20%;
}

 [id*="processing"] .top-section.ceramic{
	background-image: url("../../../assets/images/material-processing_sayto_08.jpg");
	padding:33% 20% 15% 20%;
}

[id*="processing"] .top-section > .box  {
	width: 40%;
	position:absolute;
	top:15%;
	padding: 50px;
	min-height:450px;
	text-align:left;
}
[id*="processing"] .top-section > .box >h2  {
	text-align:left;
	position: relative;
    font-size: 3vw;
    top: unset;
    left: unset;
    transform: unset;
	color:#ffffff;
	margin-bottom:50px;
}

[id*="processing"] .top-section .box1  {
	background-color: var(--hover-color);
	background-color:#0488cc;
	left:50%;
}
[id*="processing"] .top-section .box2  {
	background-color: var(--dark-blue);
	background-color:#035985;
	right:50%;
}

[id*="processing"] hr {
    border-top: 1px solid #ffffff;
    line-height: 1;
    margin: 1rem 0px;
}
/* Material 取扱い樹脂材料 */ 

[id*=materials] .header-img{
    background-image: url("../../../assets/images/material-sales_sayto_02.jpg");
}

[id*=materials]  .top-section.stock{
    background-image: url("../../../assets/images/material-sales_sayto_06.jpg");
    min-height: 820px;
	background-size:100%;
}

[id*=materials]  .top-section .buttons{
    display: flex;
    justify-content: space-around;
    position: absolute;
    top: 75%;
    left: 15%;
    transform: translate(0%, -50%);
    margin: 0 auto;
}

[id*=materials]  .top-section .buttons img{
    width: 400px;
}







#recruit .header-img{
    background-image: url("../../../assets/images/recruit_sayto_02.jpg");
}



.top-section h2 span.num {
    font-size: 4rem;
    color: #ef5050;
    line-height: 1;
    font-weight: 700; 
}


/* Contact */
#contact .header-img, #contact-send .header-img{
    background-image: url("../../../assets/images/contact_sayto_02.jpg");
}

#contact .top-section{
    background-color: #ffffff;
    margin-top:50px;
}
#contact .top-section h2 {
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0 auto;
    padding: 0 30px;
    background-color: #ffffff;
    text-align: center;
    color: var(--hover-color);
    font-size: 1.5rem;
    width: auto;

}

#contact-send .top-section.contact {
    background-image: none;
    padding-top: 0px;
}

#contact .top-section.contact {
    background-image: url("../../../assets/images/contact_sayto_04.jpg");
    padding-top: 300px;
    background-color: #2a2a2a;
}

#contact .top-section.contact .inner{
    background-color: transparent; 
    border: none;
    width: 85%;
    padding: 4rem 8rem;
    margin: 1rem auto 0;
}

#contact, #contact-confirm, #contact-sent {

}
#contact #contact-confirm, #contact #contact-sent, #contact-confirm #contact-confirm, #contact-confirm #contact-sent, #contact-sent #contact-confirm, #contact-sent #contact-sent {
    margin-top: 150px; 
}

#contact p {
  line-height: 2;
  margin-bottom: 0;
  font-size: 15px;
}

#contact .form-control{
    height: auto;
}


#contact .form-table{
	background-color: #ffffff;
}

#contact  ul.form-table {
  margin-bottom: 50px; 
}


#contact ul.form-table li {
    display: flex;
    align-items: center;
    border: 1px solid var(--border-color);
}

#contact ul.form-table li:last-child {
    border: none;
}

#contact .form-input > input, select, #contact .form-input > textarea{
  display: block;
  width: 100%;
  height: 55px;
  padding: 0px;
  font-size: 16px;
  background-color: #eee;
  border-radius: 1px;
  margin-bottom: 0; 
}

#contact .form-input {
    width: 70%; 
    padding: 0px 30px;
}

#contact .form-title, #contact .form-title-msg {
    width: 25%;
	background-color: #f0f9fe;
	padding:40px;
}

#contact .form-title-msg{
	padding:102px 30px;
}

#contact .form-input > textarea {
	margin: 30px 0px;
	width:100%;
	height: 170px;
}

#contact input, select  {
	padding-left:30px;
}

/* Google */
.teQAzf{
	width:100%;
}


@media (max-width: 960px) {
#contact .top-section.contact{
    background-size:contain;
	padding-top: 180px;
}
}
@media (max-width: 480px) {
	
 #contact ul.form-table li {
        flex-direction: column;
}
#contact .form-table li {
	padding: 15px;
} 

 #contact .form-title {
      width: 100%;
      text-align: left; 
	     padding: 0;
    background-color: #ffffff;
} 

#contact .form-input {
      width: 100%; 
	 padding: 0px;
} 
	
#contact .form-title-msg{
	padding: 0px;
	width: 100%;
	background-color: #ffffff;
}

#contact .form-input > textarea {
    margin: 0px 0px;
	border:none;
}

}

#contact .table{
	background-color: #ffffff;
}






@media screen and (max-width: 768px){ 
	#contact .top-section.contact {
	background-size: contain;
	padding-top: 25%;
}
	
}



.form_table{
    font-size:1rem;
}

.form_req{
    font-size:.9em;
    padding: 5px;
    background: #ff7887;
    color: #fff;
    border-radius: 3px;
    margin-right: 5px;
}

/*
.form_table{
    margin:0 0px;
}
table.form_table tr {

}
table.form_table th {
    padding: 0 30px;

}
table.form_table td {
    background: #ffffff;
    padding:30px;
}
table.form_table td > input {

}
input[type=checkbox], input[type=radio] {
    margin: 0 0;
    line-height: normal;
}

*/

@media screen and (min-width: 768px){ 
.form_table th{
/*    width:30%;*/
    background-color:#f0faff!important;
} 
}

/* スマホ・タブレットは 横幅100% */
@media screen and (max-width: 900px){
.form_table tbody,
.form_table tr, .form_table td{
display: block;
width: 100%;
}
.form_table th{
width:100%;
display:block;
margin: 0 auto;
border:none;
background-color:#f0faff!important;
}
}


.form_btn > .btn-primary{
    width: 300px;
    font-size: 24px;
    font-weight: bold;
    text-decoration: none;
    display: block;
    text-align: center;
    padding: 8px 0 10px;
    color: #fff;
    background-color: var(--border-color);
    border-radius: 25px;
    margin: 50px auto 100px;
}

table tbody tr td,table{
    border:0;
}



@media (min-width: 1024px) {
  h1.page-header_pageTitle {
    font-size: 67px !important;
    margin: -20px 0 5px !important; } }

@media (min-width: 1024px) {
  page-header_pageTitle > span {
    font-size: 18px; }
  .page .entry-body {
    padding-bottom: 0px; }
  .siteContent {
    padding: 0; }
  ul.gMenu {
    table-layout: fixed; }
  ul.gMenu > li {
    display: table-cell; }
  ul.gMenu > li > a {
    padding: 10px 20px;
    background: transparent; } }


@media (max-width: 480px) {
  #top__fullcarousel {
    margin-top: 50px !important; } }

#top {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }

#top p {
  font-weight: bold;
  margin: 0; }

#top.siteContent {
  padding: 0px; }

#top .inner-content {
  width: 77%;
  margin: 0 auto; }








/* Menu */
 
ul.menu {
    display: table;
    margin: 0 auto;
    padding: 0;
    width: 85%;
    text-align: center;
}
ul.menu li{
    display: table-cell;
    min-width: 50px;
    position: relative;
}
ul.menu li:not(:first-child):after{
    position: absolute;
    color: #CCCCCC;
    content: '|';
    top: 30%;
    left: 0;
}
ul.menu li a{
    display: block;
    width: 100%;
    padding: 10px 0;
    text-decoration: none;
    font-weight: bold;
}
ul.menu li.current a{
    color: initial;
}
ul.menu li a:hover{
    color: var(--hover-color);
    border-bottom: 1px solid var(--hover-color);
}


@media (max-width: 960px) {

	.menu-mobile_nav{
		 display: block;
	}
	ul.menu{
		min-width:100px;
	}
    ul.menu li{
    display: block;
    min-width: 50px;
}
	ul.menu li:not(:first-child):after{
		border:none;
	}	
	
}

footer .menu{
    width: 100%;
}

footer .widget_nav_menu ul li a {
  color: #fff;
  border-bottom: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  line-height: 1.5;
  font-size: 1rem;
  letter-spacing: 2px; 
}

footer .widget_nav_menu ul li a:hover{
	border:none;
}

footer .widget_nav_menu ul li a span {
  font-size: 14px;
  letter-spacing: 4px; }


footer .widget_nav_menu ul > li > a::before {
    font-family: 'Font Awesome 5 Free';
    content: "\f054";
    font-weight: 900;
    position: absolute;
    font-size: 18px;
    margin-left: -30px; 
    color: var(--hover-color);
}

footer .widget_nav_menu ul.menu li:not(:first-child):after {
    position: absolute;
    color: red;
    content: none;
    top: 30%;
    left: 0;
}


.menu ul li a {
  font-size: 30px; }

ul.sub-menu {
  position: relative; }

footer .widget_nav_menu ul li ul.sub-menu li a::before {
    content: "\f054";
    top: 7px; 
}



/* Footer */
.siteFooter{
/*footer {*/
    background-image: url("../../../assets/images/footer.jpg");
    color: #fff;
    border-top: none;
    position: absolute;
    width: 100%;
    background-repeat: no-repeat;
	display: block;
    width: 100%;
    height: 0;
    padding-bottom: calc(100%*970/1920);/* calc(100*ImageHeight/ImageWidth)% */
    background-size: contain;	
}

footer .copySection {
    width: 100%;
    text-align: center;
    background-color: #010123;
    padding: 20px;
    color: var(--hover-color);
    height: 60px;
    position: absolute;
    bottom:0;
}

footer .sectionBox {
}

footer .upperSection {
    margin-bottom: 50px;
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 100%;
    background: rgba(10,10,28, 0.85);
    background-repeat: no-repeat;
    padding-top:1.5rem;
}
footer .upperSection .logo{
    margin: 20px auto;
}

footer .widget{
    text-align: center;
    margin: 0 auto;
    width: 85%;
}


.buttons img{
	width:30%;
}

/* TOP 2023*/

.top-bg{
	width: 100%;
    height: 700px;
    background-image: url(../../../assets/images/mv1.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	position:relative;
}

.top-block{

}
.top-mv{
	position: absolute;
    top: 35%;
    width: 30%;
    left: 70%;
}
.top-btn{
	position: absolute;
    bottom: 100px;
    width: 100%;
    text-align: center;
}

.movie{
	margin: 160px 0px;
    text-align: center;
}

/*----------------------------------------------------------------------------------------------------------*/



/* SmartPhone */ 


@media (max-width: 480px) {
    
   
    h2{
        font-size:20px;
    }
    
	p {
		font-size: 3vw;
	}

    .nav-bar-logo{
        width: 100%; 
      display: flex;
     text-align: center; 
     align-items: center; 
    }
    .nav-bar-logo img {
        height: 40px;
        width: auto;
        display: inline-block;
    } 
    .nav-bar-logo h1{
       font-size: 1rem;
    } 
 
    .navbar-brand img {
        max-height: 30px;
        margin-left: 10px; 
    } 

    .vk-mobile-nav{
        height: auto;
    }
    
    
    .siteContent{
        padding-top:0;
    }
    .top-section{
        padding-top:0;
    }
    
    .top-section .title{
        min-height: 80px;
          padding: 0 20px;
    }
    
    .top-section h2 {
        width: 100%;
        font-size:5vw;
        position: relative;
        top:0;
        left: 0;
        transform: none;
        margin-bottom:1rem;
    }
    
    .header-img{
        min-height: 80px;
    }

    .header-img h1{
        font-size:1rem;
        top:40%;
    }
    
	.carousel-inner{
		margin-top:0px;
	}
	
    .inner{
        width: 100%;
    padding: 1rem;
    }
    #contact .top-section h2{
        width: 100%;
		font-size:1rem;
    }
    
    #contact .top-section.contact {
    background-image:none;
    padding-top: 0px;
    }
    #contact .top-section.contact .inner {
    background-color: transparent;
    border: none;
    width: 100%;
    padding: 1rem;
     margin: 1rem auto 0;}
    
    .form_table{
     width: 100%;
        margin:0;
    }
    
	
	
    table.form_table tr, table.form_table th{
    border-top: none;
    }
    
    #about .top-section.company{
        margin-bottom:5vw;
    }

    
table.form_table th {
    padding: 0 10px;
}
table.form_table td {
    padding:30px 10px;
	margin-bottom: 30px;
}
 
    .company_info {
      flex-direction: column; 
    
    }
    
    #about .company_info table th, #about .company_addr table th {
        width: 20%;
    }
    

    #about .company_info {
    margin: 0px;
    display: flex;
    justify-content: center;
    justify-content: start;
    
    }
    
    
    
    #about .company_info table {
        width: 100%; 
        font-size: 1rem;
        
    } 
    
    #about table.company_addr th {
        width: 20%;
    }
    
    footer {
    
    height:auto;        
        
    }
      
    .top-section .text{
    font-size: 4vw;
   
}
    

    
    #about .top-section.rinen {
        min-height: 0;
        padding: 8vw 0;
    }    
    #about .top-section.rinen h3{
        font-size: 5vw;
        margin-bottom: 7vw;
    }

    #about .top-section.tekizai{
        min-height: 0;
        padding: 0
    }
    
    
    #about .top-section.company h2 {
        top: 5vw;
    }
    
    
    footer .upperSection{
        display: none;
    }
  

    .top-section.flow {
    background-image: none;
    padding-bottom: 10px;
}
    .top-section.flow {
    background-image: none;
    /* padding-bottom: 160px; */
}
    
    #menu-top_nav{
        margin-bottom: 1.5em;
    display: flex;
    flex-direction: column;
            text-align: left;
    }

    
    .top-section.flow .contents{
        padding: 50px 0;
    }
    
    
    .top-section.about{
        background-image: none;
        padding: 0;
    }
    
        .top-section.about img {
        width:100%;
    }
    
    
    
    
 .top-section.about .text  {
    line-height: 2;
    color: initial;
    width: 100%;
    padding: 30px 0;
    font-size: 1rem;
}

    .gallery img, #gallery-1 img{
        border:none !important;
    }
    [id*=materials]  .top-section .material-gallery {
        background-image: url(../../../assets/images/gallery_bg.png);
        padding: 10px;
    }
    
    [id*=materials] .top-section{
        padding-bottom:2rem;
    }
    [id*=materials]  .top-section .material-gallery h2{
        color: #ffffff;
        margin-bottom:10px;
    }
            
    [id*=materials]  .top-section .material-gallery .gallery img,
    #fdp .top-section .gallery img   {
        padding: 10px 10px;
        border: none;
    }
    
    [id*=materials]  .top-section .buttons{
        flex-direction: column;
        width: 100%;
        position: relative;
        top: 0%;
        left: 0%;
        transform: none;
    }
    
    [id*="processing"] hr {
        border-top: 1px solid #ffffff;
        line-height: 1;
        margin: 10px 5px;
    } 

    .top-section .plastic, .rubber, .ceramic, .metal{
        padding: 30px 20px;
        color: #ffffff;
    }
   .top-section .plastic h2, .rubber h2,.ceramic h2 , .metal h2{
        font-size: 9vw;
        text-align: left;
    }
    [id*="processing"] .top-section.processing p{
        font-size: 3vw;
        padding: 0;
		text-indent: -1em;
        padding-left: 1rem;
	}
        
       


    [id*="processing"] .top-section .plastic,[id*="processing"] .top-section .rubber  {
        background-color: var(--hover-color);
        
    }
    [id*="processing"] .top-section .metal, [id*="processing"] .top-section .ceramic  {
        background-color: var(--dark-blue);
        
    }    
	
[id*="processing"] #gallery-1 .gallery-item, #machine #gallery-1 .gallery-item{
	   float: left;
       margin: 3px;
       text-align: center;
       width: 48%;
   }	
	
.contents {
     margin:auto;
     }
     
	#machine div.machine{
		padding: 20px;
        word-break: keep-all;
	}
	
	#machine div.machine h3{
		border: 1px solid var(--hover-color);
        display: inline;
        padding: 1px 10px;
        color: var(--hover-color);
        font-weight: 700;
	}
	#machine .container p{
		text-indent: -1em;
    padding-left: 1rem;
	}
    
	.gallery img{
		width:100%;
	}
	
/* 2023*/
.top-bg{
	width: 100%;
    height: 700px;
    background-image: url(../../../assets/images/mv_m1.jpg);
    background-size: cover;
}	
.top-mv{
	position: relative;
	left:unset;
	top:unset;
	width:100%;
 }	
.top-mv > video{
	width:100%;
 }	
	
}






