﻿@charset "UTF-8";


 /*========================================
   sub. company     pc 
 ========================================*/

.viewpc{ display: inline!important}

 /*==========   sub top   =============*/


#sub01-header {
    background-image: url(../../img/flow/sub_bg.jpg);
    border-bottom: 3px solid #95c34a;
}



.page-header {
    width: 100%;
    height: 310px;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
    padding-top: 120px;
    position: relative;
}



.page-header:before{
    position: absolute;
    top: 0;
    left: 0;
     width: 100%;
    height: 310px;
    content:"";
    background: url(../../../common/img/dot.png) 0 0 repeat;
    z-index: 0;
}


.sub-container-all{
    width: 100%;
    margin: 0 auto;
    background: #f3ebd0;
    padding: 10px;
}



.sub-container {

    position: relative;
    width: 1080px;
    margin: 0 auto;
    padding: 0;
    z-index: 1;

}


.sub-container h1 {
   color: #492c19;
   text-align: center;
   padding: 0 20px;
   text-shadow: 0px 0px 20px rgba(255,255,255,0.97);

}

.sub-container h1 span {
  display: block;
  line-height: 2em;
}


.mv-l{
    font-size: 47px;
    font-weight: bold;
    letter-spacing: -0.03em;
    position: relative;
}


.mv-s{
   font-size: 22px;
   font-weight: normal;
  letter-spacing: 0.02em;

}




.sub-container2{
   width: 960px;
   margin: 0 auto;

}

.sub-container2-line {
   border-top: 2px solid #42210b;

}



.sub-container3{
   width: 1000px;
   margin: 0 auto;

}



.sub {
  
  margin: 0 auto;
  text-align: center;
 
}





/* c01 */

#c01 p{
  margin-top: 60px;
  text-align: center;
}



.subtxt01 {
    color: #492c19;
    font-size: 32px;
    font-weight: bold;
    letter-spacing: 0.2em;
    line-height: 2em;
    margin-top: 60px;
}

.subtxt02 {
  text-align: left;
  margin-top: 20px;
  line-height: 2.4em;

}





/* c03 */



#c02 {
  margin-top: 40px;
  margin-bottom: 80px;
}



 /*========================================
    flow
 ========================================*/

.flowimg {
  /*position: absolute;
  top: 10px;
  right: 10px;*/
}

.flowbox,
.flowbox ul{
  display: flex;
}

.flowbox, 
.flowbox2 {
  border-bottom: 1px solid #ded4c1;
  position: relative;
  padding: 30px 10px;
  
}


.flowbox ul li{
    /*float: left;
    margin-right: 5%;
    width: 50%;*/
    width: calc(100% - 160px);
    padding-right: 20px;
    text-align: left;
}

.flowbox2 ul li{
    float: left;
    margin-right: 5%;
    width: 75%;
    text-align: left;
}

.flowbox ul li.clock,
.flowbox2 ul li.clock
{
    background: url(../../img/flow/clocky.png);
    width: 100px;
    height: 100px; 
    vertical-align: middle;
    text-align: center;
 
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center; /* 縦方向中央揃え */
    -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
    justify-content: center; /* 横方向中央揃え */
}

.flowbox ul li.clock2,
.flowbox2 ul li.clock2
{
    background: url(../../img/flow/clockg.png);
    width: 100px;
    height: 100px; 
    vertical-align: middle;
    text-align: center;
 
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center; /* 縦方向中央揃え */
    -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
    justify-content: center; /* 横方向中央揃え */
}

.flowbox ul li.clock,
.flowbox ul li.clock2{
  width: 100px;
  padding-right: 0;
  margin-right: 40px;
}

.set{
  font-size: 21px;
  letter-spacing: 0.1em;

}

.set2 {
  font-size: 22px;
  font-weight: bold;

}

.flowbox-h1 {
  /*height: 230px;*/
}


.flowbox-h2 {
  height: 350px;
}
/* ========================================*/











 /*========================================
    sub. company      sp 
 ========================================*/






 /* 768 px */
@media screen and (max-width: 768px){


.viewpc {
    display: none!important;
}
.viewsp {
    display: block!important;
}

 /*==========   sub top  =============*/



.sub-container {
    width: 90%;
}

.page-header {
    height: 200px;
    padding-top: 100px;
}


.page-header:before{
   height: 200px;
}

.sub-container h1 span {
    line-height: 1.3em;
}

.mv-l {
    font-size: 30px;
    font-weight: bold;
    letter-spacing: -0.03em;
    position: relative;
}

.mv-s {
    font-size: 15px;
    font-weight: normal;
    letter-spacing: 0.02em;
}



.sub-container2 {
   width: 90%;
}

.sub-container3 {
   width: 90%;
}







 /*========================================
    flow
 ========================================*/

.flowimg {
  position: relative;
  top:0;
  right: 0;
  padding-bottom: 0px;
}


.flowbox ul li,
.flowbox2 ul li {
  float: none;
  margin: 0 auto;
  width: auto;
  padding-right: 0;
}
.flowbox,
.flowbox ul{
  display: block;
}

.flowbox ul li.clock,
.flowbox ul li.clock2{
  margin: 0 auto;
}

.set2{
  text-align: center;
  margin-top: 20px;

}

.flowbox {
  padding: 15px 10px;
}

.flowbox-h1,
.flowbox-h2 {
  height: auto;
}



/* ========================================*/


}









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


.flowbox p img{
  width: 100%;
}




}