@charset "utf-8";

/* ----------------------------
    全ページ共通
---------------------------- */

.logo img{
    width: 32vw;
}

/* 全体
---------------------------- */

body {
    padding-top: 5.6vw;
}

body:before{
    content:"";
    background: url("../img/background.jpg")center no-repeat;
    display:block;
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    width:100%;
    height:100vh;
    background-size:cover;
  }

.content{
    width: 96vw;
    background: #ffffff;
    margin: auto;
}

.content2{
   padding: 0 8vw;
   padding-bottom: 8vw;
}

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

/* ヘッダ
---------------------------- */

header {
    background-color:#FFF;
    width: 100%;
    position: fixed;
    top: 0;
    z-index: 9999;
    box-shadow: 0px 1px 3px rgba(0,0,0,0.5);
}

.logo {
    float: left;
    padding: 0.2vw;
}

header nav {
    float: right;
}

header li {
    float: left;
    height: 5.28vw;
}     

header li:last-child {
    border-right: none;
}

header nav a {
    color: #000000;
    text-decoration: none;        
    display: block;
    padding: 1.6vw 0;
    width: 10.4vw;
    text-align: center;
}

header .navred {
    float: right;
    background-color:#C3463C;
    position: relative;
}

header .navred::before {
    content: "";
    position: absolute;
    background: linear-gradient(-71.5deg,transparent , #C3463C 50% , #ffffff 50%,#ffffff);
    width: 20%;
    height: 100%;
    top: 0;
    left: 0;
}

.navred a {
    color: #ffffff;
    float: right;
    width: 14.4vw;
    padding-left: 1.92vw;
}

.toggle {
    display: none;
}

/* フッタ
---------------------------- */

footer {
    background-color: black;
    height: 16vw;
    opacity: 0.8;
    margin-top: 6.4vw;
    font-size: 0.9em;
}

footer .content-2 {
    padding: 1.6vw 0px;
    margin: 0 auto;
}

footer .content-2 div div {
    color: #FFF;
    float: left;
    padding-left: 6.8vw;
}

footer ul {
    float: right;
    padding-right: 0.8vw;
}

footer li {
    float: left;
}

footer a {
    color:#FFF;
    display: block;
    padding:0.4vw 0.64vw;
    flex-direction:column;

}

footer p {
    color: #ffff;
    text-align: center;
    padding: 0.8vw;
    font-size: 0.9em;
}

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

    TOPページ

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

/* 共通パーツ
---------------------------- */

section {
    background-color: #FFFFFF;
}

.title {
    position: relative;
    overflow: hidden;
}

.title2{
    padding-top: 1.2vw;
    position: relative;
    overflow: hidden;
}

.top {
    height: 16vw;
    background-color:#D6D5D5;
    font-size: 2.88vw;
    color: black;
    padding: 4.8vw;
    background: linear-gradient(170.7deg,#D6D5D5 , #D6D5D5 50% , #EEEEEE 50%, #EEEEEE);
}

.more {
    position: absolute;
    bottom: 0vw;
    left: 48vw;
    display: block;
    color: #FFFFFF;
    width: 48vw;
    height: 8vw;
    text-align: right;
    padding-right: 1.6vw;
    font-size: 2.08vw;
    line-height: 8vw;
    text-decoration: none;
    background: linear-gradient(170.7deg, transparent, transparent 50%, #000 50%, #000);
}

.fadein {
    opacity: 0;
    transform : translate(0, 50px);
    transition : all 1500ms;
}
  
.fadein.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

/* メイン部分
---------------------------- */

.main {
    padding: 6.4vw;
    font-size: 3.84vw;
    color: #FFFFFF ;
    text-align: center;
    font-family: serif;
}

.index＿main{
    padding: 12vw;
}


/* 会社紹介
---------------------------- */

.navred2 {
    font-size: 2.88vw;
    background: linear-gradient(170.7deg,  #C3463C,#C3463C 50%, #FFF 50%, #FFF);
    color: #FFFFFF;
    padding: 4.8vw;
    height: 16vw;
}

.float-box a {
    display: block;
}

.float-box img { 
    float: left;
    margin: 5.6vw 4.16vw;
    width: 24vw;
}

.float-box p { 
    margin: 6vw 6vw 0 6vw;
    line-height: 2.5em;

}

/* 事業紹介
---------------------------- */

.triangle {
    background: linear-gradient(170.7deg, #FFF, #FFF 50%, #D6D5D5 50%, #D6D5D5);
    height: 16vw;
    width: 96vw;
}

.float-box2 {
    background-color:#EEEEEE;
}

.float-box2 > li, .float-box2 a {
    display: block;
    width: 24vw;
    float: left;
    height: 32vw;
    font-size: medium;
    background-color: white;
    text-decoration: none;
    margin-top: 6vw;
    margin-left: 6vw;
}

@media screen and (max-width: 900px) {
    .float-box2 a {
        height: 38vw;
    }
}

.float-box2 a:nth-child(3n) {
    margin-right: 0;
}

.float-box2 img {
    width: 24vw;
}

.float-box2 img, .float-box2 iframe {
    width: 24vw;
    height: 16vw;
}

.float-box2 div {
    padding: 1.6vw;
    font-size: 80%;
}

div {
    color: black;
}

/* 新着情報
---------------------------- */

.navred5{
    background-color: #C3463C;
    width: 96vw;
    font-size: 36px;
    background: linear-gradient(170.7deg, #C3463C,#C3463C 50%, transparent 50%,transparent);
    color: #FFFFFF;
    padding: 4.8vw;
    height: 16vw;
    top: 0;
    left: 0;
}

p.info1{
    font-size: 1.44vw;
    float: left;
    display: block;
    width: 10vw;
}

a.info2{
    font-size: 1.44vw;
    display: block;  
    padding-left: 1.6vw;
    float: right;
    width: 70vw;
    color: #222222;
}

div.infodate{
    font-size: 1.6vw;
    color: #5E5E5E;
    text-align: right;
    padding: 3.2vw;
}

h3.infotitle{
    font-size: 2.4vw;
    color: #222222;
    text-align: center;
    padding-bottom: 2.4vw;
}

.infocontent{
    line-height: 2;
}

.infocontent a{
color: #C3463C;
}

.information{
    padding: 1.6vw;
    margin: 0 3.2vw 3.2vw 3.2vw;
    text-align: center;
}

.information2{
    font-size: 18px;
    color: #000000;
    border: solid 1px #000000;
    padding: 0.8vw 3.2vw;  
    text-decoration: none;
}

.navigation.pagination{
    position: relative;
}

.nav-links{
    text-decoration: none;
    text-align: center;
    display: inline-block;;
    margin: auto;
    color: #000000;
    position: absolute;
    top: 50%;
    left: 50%;
    transform : translate(-50%,-50%);
    width: 96vw;
    padding-bottom: 12vw;
    height: 8vw;
    text-decoration: none;
}

.page-numbers.current{
    background-color: #000000;
    color: #FFFFFF;
    border: solid 1px #222222;
    width: 4vw;
    padding: 0.8;
    text-decoration: none;
}

.page-numbers{
    border: solid 1px #222222;
    color: #222222;
    width: 4vw;
    padding: 0.8vw;
    text-decoration: none;
}




/* 新着情報
---------------------------- */

.triangle2 {
    background: linear-gradient(170.7deg, #EEEEEE, #EEEEEE 50%, #D6D5D5 50%, #D6D5D5);
    height: 16vw;
    width: 96vw;
}

.float-box3 {
    background: linear-gradient(170.7deg,#D6D5D5 , #D6D5D5 50% , #FFFFFF 50%, #FFFFFF);
    font-size: 2.88vw;
    color: #000;
    padding: 4.8vw;
    height: 16vw;
}

.float-box4 a {
    color: #222222;
}


.list_news li{
    line-height: 1em;
    font-size: 1.44vw;
    stop-opacity: inherit;
}

.list_news span{
    margin-bottom:  1.44vw;
    display: block;
    padding-top: 1.76vw;
}

.list_news{
    padding:4vw;   
}

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

    会社概要ページ

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

.nowpage {
    border-top: 2px solid #C3463C;
}

.float-box5 img{
    width: 96vw;
    height: 40vw;
}

.navred3 {
    background-color: #C3463C;
    width: 96vw;
    font-size: 2.88vw;
    background: linear-gradient(170.7deg, #C3463C,#C3463C 50%, transparent 50%,transparent);
    color: #FFFFFF;
    padding: 4.8vw;
    height: 16vw;
    position: absolute;
    top: 0;
    left: 0;
}

.triangle3 {
    background: linear-gradient(170.7deg, transparent,transparent  50%, #FFFFFF 50%, #FFFFFF);
    width: 96vw;
    height: 16vw;
    position: absolute;
    bottom: 0;
    right: 0;
}

.content2 p{
    color: #222222;
    font-size: 1.44vw;
    line-height: 1.8em;
    margin-bottom: 2.4vw;
}

table.about {
    width: 100%;
    font-size: 1.6vw;
    padding-top: 3.2vw;
}

table.about th,table.about td {
    border-collapse: collapse;
    border:1px solid #FFFFFF;
    width:auto;
    padding:0.8vw;
}

table.about th{
    background-color: #DDDDDD;
    vertical-align: middle;
    width: 16vw;
}

table.about td {
    background-color: #EEEEEE;
}

h2.access{
    font-size: 1.92vw;
    color: #222222;
    margin: 6.4vw;
    text-align: center;
}

.access1 {
    width: 100%;
}

.access2{
    font-size: 1.44vw;
    color: #000000;
    padding: 2vw 0 12.8vw 0;
}

footer p.about{
    padding: 3.04vw;
    text-align:center;
}



/* 事業紹介
---------------------------- */

.navred4 {
    background-color: #FFFFFF;
    width: 96vw;
    background: linear-gradient(170.7deg, #FFFFFF,#FFFFFF 50%, transparent 50%,transparent);
    padding: 4.8vw;
    height: 16vw;
    position: absolute;
    top: 0;
    left: 0;
}

.content p.business{
    font-size: 1.92vw;
    text-align: center;
}

.content p.business2{
    font-size: 1.44vw;
    text-align: left;
    padding: 1.6vw 8vw;
}

.content .hp a{
    background-color:#000000 ;
    color: #FFFFFF;
    display: block;
    width: 36vw;
    height: 4vw;
    margin:  auto ; 
    text-decoration: none;
    text-align:center;
    padding-top: 0.96vw;
}

.p1{
    padding: 3.52vw 0;
    padding-bottom: 6.88vw;
}

.title img{
    width: 100%;
} 



.img.film{
    width: 24vw;
    float: left;
   }
   
   .sectionfilm
   {
       background-color: #EEEEEE;
   }
   
   h2.film{
       font-size: 2.4vw;
       text-align: center;
   }
   
   p.film{
       font-size: 1.44vw;
       text-align: left;
       padding: 1.6vw 8vw;
   }
   
   
   table.about_film2{
       width: 100%;
       font-size: 1.6vw;
       margin: 5vw 0.08vw 0.08vw;
   }   
   
   .navred2_film{
       font-size: 2.88vw;
       background: linear-gradient(170.7deg,  #C3463C,#C3463C 50%, #EEEEEE 50%, #EEEEEE);
       color: #FFFFFF;
       padding: 4.8vw;
       height: 16vw;
   }
   
   table.about_film2 th,table.about_film2 td{
       border-collapse: collapse;
       border:5px solid #FFFFFF;
       width:auto;
       padding:1.6vw;
   }
   
   table.about_film2 th{
       background-color: #EEEEEE;
       vertical-align: middle;
   }
   
   table.about_film2 td{
       background-color: #EEEEEE;
   }
   
/* ----------------------------
    求人情報ページ
---------------------------- */

h2.recruit{
    font-size: 1.92vw;
    text-align: center;
    color: #222222;
    padding: 3.2vw 0;
    margin-top: 1.6vw;
}

.recruit2 {
    font-size: 1.04vw;
    text-align: left;
    color: #383838;
    background-color: #EEEEEE;
    display: inline-block;
}

p.content2.recruit2{
    font-size: 1.04vw;
}


table.recruit{
    margin-bottom: 4.8vw;
}

.notjob{
    text-align: center;
    margin: auto;
}


/* 問合せ
---------------------------- */

.content2.contact{
    padding-bottom: 12vw;
}

h3.contact{
    font-size: 1.92vw;
    color: #222222;
    text-align: center;
    padding: 4vw;
}

.after{
    position: relative;
}

.back{
    background-color: #EEEEEE;
    text-align: center;
    padding: 0.8vw;
    transform: skewX(-45deg);
    width: 56vw;
    padding: 1.6vw;
    height: 16vw;
    margin:0 auto;
    position: relative;
}

.front{
    position: absolute;
    padding:  1.6vw;             
    left: 4.32vw;
    top: 2.32vw;
 
}

.representative{
    font-size: 3.84vw;
    color: #000000;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    padding-left: 19.52vw;
    margin-bottom: 1.6vw;
    padding-bottom: 0.88vw;
}

.contactell2{
    font-size: 1.44vw;
    color: #222222;
    width: auto;
    margin-top: 0.8vw;
    display: inline-block;
    width: 8vw;   
    margin-bottom: 0.48vw;    
    text-align: left;        
}

.contactell{
    font-size: 1.44vw;
    color: #222222;
    text-align: center;
    margin-bottom: 0.48vw;
    display: inline-block;
    padding-left: 23.44vw;
}

h4.contact{
    font-size: 1.92vw;
    color: #222222;
    text-align: center;
    padding: 5.6vw 0 0 1.6vw;
}

.contactell3{
    font-size: 1.44vw;
    text-align: left;
    padding: 1.5em;
}

.mailred{
    color: #EE220C;
    text-align: right;
}


.contactmail{
    font-size: 1.44vw;
    color: #222222;
}

.mailred2{
    color: #EE220C;
    text-align: center;
    padding: 0 1.04vw 0 0 ;
    width: 0.4vw;
    margin: 0;
    display: inline-block;
}

.form{
    font-size: 1.44vw;
    color: #222222;
    text-align: center;
    margin: 2.4vw;
    padding-right: 12vw
}

table.about2 {
    width: 100%;
    font-size: 1.44vw;
    padding-top: 3.2vw;
    text-align: center;
    padding: 0 4vw 2.4vw 54vw;
}

table.about2 th,table.about2 td {
    padding:0.8vw;
    text-align: right;
    line-height: 2em;
}

table.about2 th{ 
    vertical-align: middle;
    width: 12vw;
    text-align: right;
    padding-right: 1.6vw;
}

th.textarea label{
    height: 0.8vw 0.8vw 19.2vw 0.8vw;
}

table.about2 td{
    vertical-align: middle;
    text-align: left;
    width: 24vw;
}

table.about2 input{
    width: 100%;
    padding: 0.8vw;
}

table.about2 textarea{
    width: 100%;
    height: 20vw;
    padding: 1.6vw;
}

.mw_wp_form_input .confirm{
    font-size: 1.92vw;
    background-color: #C3463C;
    color: #FFFFFF;
    text-align: center;
    width: 20vw;
    margin: 1.6vw 30vw;
    padding: 1.6vw;
    border-radius: 0.8vw;
}

.mw_wp_form_input .form-confirm-only{
    display: none;
}

/* 送信画面
---------------------------- */

.fix{
    font-size: 1.92vw;
    background-color: #5E5E5E;
    color: #FFFFFF;
    text-align: center;
    width: 20vw;
    padding: 1.6vw;
    border-radius: 0.8vw;
    margin-left: 16vw;
    float: left;

}

.mw_wp_form_confirm .confirm{
    font-size: 1.92vw;
    background-color: #C3463C;
    color: #FFFFFF;
    text-align: center;
    width: 20vw;
    padding: 1,6vw;
    border-radius: 0.8vw;
    margin-right: 16vw;
    float: right;
}

.mw_wp_form_preview .form-input-only{
    display: none;
}