@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　feature
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/
.page-ttl{
  height: 867px;
  background-image:url(../image/bg_ttl_pc.jpg);  
}
.page-ttl h1 {
	position: absolute;
	left: 50%;
	top: 320px;
  transform: translate(-50%,0)
	font-weight: normal;
}
.page-ttl h1 .en {
	margin-bottom: 10px;
	font-size: 7.2rem;
  letter-spacing: .15em
}
.page-ttl h1 .ja {
	font-size: 2.2rem;
}
#Footer .ft-cont::after{
	background: transparent;
}

/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/
.sec-quality{
  padding-bottom: 80px;  
}
/* intro
-----------------------------------------------------------------*/
.intro{
  position: relative;
  z-index:20;
  margin-top: -245px; 
}
.intro .inner{
  max-width: 1390px;  
}
.intro-cont{
  padding: 70px 30px 60px;
  background: #FFF;
  text-align:center;     
}
.intro-cont h2{
  margin-bottom: 25px;
  font-size: 3.2rem;
  line-height:1.6;  
}
.intro-cont .txt{
  font-size: 1.6rem;
  line-height: 2.1;
}


/* tab-nav
-----------------------------------------------------------------*/
.tab-nav._upper{
  margin-bottom: 60px;
}
.tab-nav._bottom{
  margin-top: 60px;  
}
.tab-nav ul{
  display: flex;
}
.tab-nav ul li{
  position: relative;
  width: 33.33333%;
  height: 72px;
  line-height:70px;
  font-size: 2.2rem;
  text-align:center;
  font-weight: bold;
  color: #FFF;
  cursor: pointer;
  transition: .3s;  
}
@media screen and (min-width: 0\0) and (min-resolution: +72dpi) {
  .tab-nav ul li{
    font-weight: 500;    
  }
}
.tab-nav ul li:hover{
  opacity: .7;  
}
.tab-nav ul li+li{
  border-left: 1px solid #FFF;  
}
.tab-nav ul li.current::after,
.tab-nav ul li:hover::after{
  position: absolute;
  left: 50%;
  display: block;
  content: "";
  width: 0;
  height: 0;
  border:solid transparent;
  border-width: 20px 10px;  
}
.tab-nav._upper ul li.current::after{
  bottom: 0;
  transform: translate(-50%,100%);  
}
.tab-nav._bottom ul li.current::after{
  top: 0;
  transform: translate(-50%,-100%);  
}
.tab-nav ul li:nth-child(1){
  background: #B5A280;
}
.tab-nav._upper ul li:nth-child(1).current::after{
  border-top-color: #B5A280;  
}
.tab-nav._bottom ul li:nth-child(1).current::after{
  border-bottom-color: #B5A280;  
}
.tab-nav ul li:nth-child(2){
  background: #1A6D85;
}
.tab-nav._upper ul li:nth-child(2).current::after{
  border-top-color: #1A6D85;  
}
.tab-nav._bottom ul li:nth-child(2).current::after{
  border-bottom-color: #1A6D85;  
}
.tab-nav ul li:nth-child(3){
  background: #B66C6A;
}
.tab-nav._upper ul li:nth-child(3).current::after{
  border-top-color: #B66C6A;  
}
.tab-nav._bottom ul li:nth-child(3).current::after{
  border-bottom-color: #B66C6A;  
}
.tab-nav ul li small{
  font-size: 1.6rem;  
}


/* tab-cont 汎用
-----------------------------------------------------------------*/
.tab-cont+.tab-cont{
  display:none;  
}
.cont-box+.cont-box{
  margin-top: 75px;  
}
.cont-box .cont-hd{
  height: 446px;
  padding-top: 100px;
  margin-bottom: 60px;
  background: no-repeat center center;
  background-size: cover;  
  text-align: center;
  color: #FFF;
}
.cont-box .cont-hd h2{
  position: relative;
  width: 330px;
  padding: 30px 15px;
  margin: 0 auto 40px;
  border: solid #FFF;
  border-width: 2px 2px 0;
  font-size: 2rem;
}
.cont-box .cont-hd .num{
  position: absolute;
  left:50%;
  bottom:0;
  transform: translate(-50%,50%);
  font-size: 4rem;
  font-weight: normal;
  font-family: "EB Garamond", serif;  
}
.cont-box .cont-hd h2::before,
.cont-box .cont-hd h2::after{
  position: absolute;
  bottom: 0;
  display: block;
  content: "";
  width: calc(50% - 35px);
  height: 2px;
  background: #FFF;  
}
.cont-box .cont-hd h2::before{
  left: 0;  
}
.cont-box .cont-hd h2::after{
  right: 0;  
}
.cont-box .cont-hd .txt{
  font-size: 3rem;
  line-height: 1.6;
  font-weight: bold;
}
@media screen and (min-width: 0\0) and (min-resolution: +72dpi) {
  .cont-box .cont-hd .txt{
    font-weight: 500;
  }  
}
.cont-box h3.txt-lead{
  margin-bottom: 20px;
  font-size: 3rem;
  line-height:1.5;
  text-align: center;
}
.cont-box h3.txt-lead+.txt{
  margin-bottom: 65px;
  font-size: 1.6rem;
  text-align: center;  
}

/* ttl-col */
.cont-box ._has-ttl{
	position: relative;	
}
.cont-box .ttl-col{
	position: absolute;
	left: 0;
	top: 0;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
}
.cont-box .ttl-col span{
	position: relative;
	display:inline-block;
	height: 54px;
	line-height: 52px;
	padding: 0 65px;
	color: #FFF;
	font-size: 24px;	
}
.cont-box .ttl-col span::before,
.cont-box .ttl-col span::after{
	position: absolute;
	top: 0;
	display: block;
	content: "";
	width: 0;
	height: 0;
	border: solid transparent;
	border-width: 27px 20px;	
}
.cont-box .ttl-col span::before{
	left: 0;
	transform: translateX(-100%);
}
.cont-box .ttl-col span::after{
	right: 0;
	transform: translateX(100%);
}

/* ttl-line */
.cont-box .ttl-line{
  position: relative;
  text-align:center;  
}
.cont-box .ttl-line::after{
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background: #231815;  
}
.cont-box .ttl-line span{
  position: relative;
  z-index:10;
  display:inline-block;
  padding: 0 16px;
  background: #FFF;
  font-size: 1.8rem;
}

/* voice */
.cont-box .voice{
  
}
.cont-box .ttl-voice{
  margin-bottom: ;
  font-size: 2.8rem;
  font-weight: normal;
  text-align:center;
}
.cont-box .ttl-voice span{
  display: block;
}
.cont-box .ttl-voice+.txt{
  margin-bottom: 15px;
  font-size: 1.3rem; 
  text-align:center; 
}
.cont-box .voice-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 974px;
  margin: 0 auto;  
}
.cont-box .voice-list li{
  max-width: 292px;
  width:calc((100% - 30px)/3);
}
.cont-box .voice-list li:nth-child(n+4){
  margin-top: 5px;  
}
.cont-box .voice .notes{
  max-width: 974px;
  margin: 40px auto 0; 
  font-size: 1.1rem;  
}
.cont-box .voice .notes li{
  text-indent: -1em;
  padding-left: 1em;  
}

/* col-box */
.cont-box .col-box{
  padding: 60px 3.75% 40px;
 border:1px solid #666; 
}

/* Quality01
-----------------------------------------------------------------*/
/* cont01-01 */
.cont01-01 .cont-hd{
  background-image:url(../image/bg_cont_hd_01_01.jpg);  
}
.cont01-01 .cont-hd h2 {
	border-width: 2px;
}
.cont01-01 .cont-hd h2::before,
.cont01-01 .cont-hd h2::after{
  display: none;  
}
.cont01-01 .ttl-col span{
	background: #1A1A1A;	
}
.cont01-01 .ttl-col span::before{
	border-right-color: #1A1A1A;
}
.cont01-01 .ttl-col span::after{
	border-left-color: #1A1A1A;
}

.cont01-01 .quality-check{
	padding: 67px 40px 42px;
	background: rgba(136,136,136,.35);	
}
.cont01-01 .check-list{
	display: flex;
	justify-content: space-between;
}
.cont01-01 .check-list li{
	position: relative;
	width: 13.125%;
	padding: 15px;
	background:#FFF;
}
.cont01-01 .check-list li::after{
	position: absolute;
	right: 0;
	top: 55px;
	transform: translateX(100%);
	display: block;
	content: "";
	width: 0;
	height: 0;
	border: solid transparent;
	border-width: 14px 16px;
	border-left-color: #FFF;
}
.cont01-01 .check-list li:nth-child(6)::after{
	display: none;	
}
.cont01-01 .check-list li div{
	height: 100%;
	background: no-repeat right bottom;	
}
.cont01-01 .check-list li:nth-child(1) div{
	background-image:url(../image/ico_num01.svg);
	background-size: 25px auto; 
}
.cont01-01 .check-list li:nth-child(2) div{
	background-image:url(../image/ico_num02.svg);
	background-size: 34px auto; 	
}
.cont01-01 .check-list li:nth-child(3) div{
	background-image:url(../image/ico_num03.svg);
	background-size: 30px auto; 	
}
.cont01-01 .check-list li:nth-child(4){
	width: 21.69%;
}
.cont01-01 .check-list li:nth-child(4) div{
	background-image:url(../image/ico_num04.svg);
	background-size: 36px auto; 	
}
.cont01-01 .check-list li:nth-child(5){
	width: 14.02%;
}
.cont01-01 .check-list li:nth-child(5) div{
	background-image:url(../image/ico_num05.svg);
	background-size: 27px auto; 	
}
.cont01-01 .check-list li:nth-child(6){
	width: 14.82%;
}
.cont01-01 .check-list li:nth-child(6) div{
	background-image:url(../image/ico_num06.svg);
	background-size: 32px auto; 	
}
.cont01-01 .check-list h4{
	margin-bottom: 10px;
	padding: 10px;
	background: #B5A280;
	text-align: center;
	line-height:1;
	font-size: 1.4rem;
}
.cont01-01 .check-list .copy{
	margin-bottom: 3px;
	font-size: 1.4rem;
	line-height: 1.3;
	color: #B5A280;
}
.cont01-01 .check-list li:nth-child(4) .copy:nth-of-type(n+2){
	margin-top: 10px;	
}
.cont01-01 .check-list .txt{
	font-size: 1.1rem;
	line-height: 1.4;
}

/* Quality02
-----------------------------------------------------------------*/
/* cont02-01 */
.cont02-01 .cont-hd{
  background-image:url(../image/bg_cont_hd_02_01.jpg);  
}
.cont02-01 .step-box{
  margin-bottom: 50px;
  padding: 50px 5% 55px;
  background: rgba(5,99,185,.1);
}
.cont02-01 .step-list{
  display: flex;
  justify-content: space-between;
  margin-bottom: 55px;
}
.cont02-01 .step-list li{
  position: relative;
  width: calc((100% - 90px)/3);
}
.cont02-01 .step-list li+li::before{
  position: absolute;
  left: -31px;
  top: 40%;
  display: block;
  content: "";
  width: 0;
  height: 0;
  border: 17px solid transparent;
  border-left-color: #1A1A1A;  
}
.cont02-01 .step-list h4{
  margin-bottom: 18px;
  font-size: 2rem;
  line-height:1;
  text-align: center;
  font-weight:normal;
  letter-spacing: .1em;
  font-family: "EB Garamond", serif;
}
.cont02-01 .step-list .pic{
  margin-bottom: 12px;
}
.cont02-01 .step-list .ttl{
  margin-bottom: 5px;
  font-size: 1.8rem;
  line-height:1.5;
}
.cont02-01 .step-list .txt{
  font-size: 1.3rem;
}
.cont02-01 .bnr{
  text-align: center;
}



/* cont02-02 */
.cont02-02 .cont-hd{
  background-image:url(../image/bg_cont_hd_02_02.jpg);  
}
.cont02-02 .cont-hd .txt {
  position: relative;
}
.cont02-02 .cont-hd .txt sup{
  position: absolute;
  top: 0;
  left: 50%;
  font-size: 1.3rem;  
}
.cont02-02 .cont-hd .txt .sup01{
  transform:translate(-10.5em,-70%);
}
.cont02-02 .cont-hd .txt .sup02{
  transform:translate(-2em,-70%);
}
.cont02-02 .layout-box{
  position: relative;
  margin-bottom: 240px; 
}
.cont02-02 .layout-box .pic{
  position: absolute;
  right: 5.83%;
  top: 0;
  width: 48%;
}
.cont02-02 .layout-box .txt-area{
  padding-left: 5.83%;  
}
.cont02-02 .layout-box .txt-area .txt-lead{
  text-align: left;
}
.cont02-02 .layout-box .txt-area .txt-lead+.txt{
  margin-bottom: 25px;
  text-align: left;
  line-height:2.1;
}
.cont02-02 .hug-box{
  position: relative;
  padding: 0 5.83%;
  margin-bottom: 105px;  
}
.cont02-02 .hug-box .pic{
  position: absolute;
  left: 0;
  top: 50%;
  width: 45%;
  transform: translate(8%,-65%);  
}
.cont02-02 .hug-box .txt{
  margin-left: 25%;
  padding: 30px 20px 35px 22%;
  background: rgba(5,99,185,.1);
  font-size: 1.6rem;  
}
.cont02-02 .hug-box .note{
  margin-top: 6px;
  text-align: right;
  font-size: 1.1rem;  
}
.cont02-02 .ttl-col span{
	background: #1A6D81;	
}
.cont02-02 .ttl-col span::before{
	border-right-color: #1A6D81;
}
.cont02-02 .ttl-col span::after{
	border-left-color: #1A6D81;
}
.cont02-02 .equipment-list{
  display: flex;
  justify-content: space-between;
}
.cont02-02 .equipment-list li{
  max-width: 256px;
  width: calc((100% - 45px)/4);
  text-align:center;  
}
.cont02-02 .equipment-list .pic{
  margin-bottom: 5px;  
}
.cont02-02 .equipment-list .txt{
  font-size: 1.6rem;
  line-height:1.5;
}

/* Quality03
-----------------------------------------------------------------*/
/* cont03-01 */
.cont03-01 .cont-hd{
  background-image:url(../image/bg_cont_hd_03_01.jpg);  
}
.cont03-01 .col-box{
  margin-bottom: 38px;
  border:none;
  background:#EEEEF0;
}
.cont03-01 .ttl-col span{
	background: #B66C6A;	
}
.cont03-01 .ttl-col span::before{
	border-right-color: #B66C6A;
}
.cont03-01 .ttl-col span::after{
	border-left-color: #B66C6A;
}
.cont03-01 .col-box p{
  text-align: center;  
}
.cont03-01 .service-list{
  display: flex;
  justify-content: space-between;
  margin-bottom: 35px;  
}
.cont03-01 .service-list div{
  max-width: 377px;
  width: calc((100% - 30px)/3);  
}
.cont03-01 .service-list dt{
  min-height:150px;
  margin-bottom: 15px;
  padding: 30px 15px 15px;
  border: 4px solid;
  text-align:center; 
  font-size: 2.2rem;
  line-height:1.4; 
}
.cont03-01 .service-list dt span{
  display: block;
  line-height:0;
  margin-bottom: 10px;
}
.cont03-01 .service-list div:nth-child(3) dt span{
  margin-bottom: 22px;
}
.cont03-01 .service-list div:nth-child(1) dt{
  border-color: #0084C4;  
}
.cont03-01 .service-list div:nth-child(2) dt{
  border-color: #4DB675;  
}
.cont03-01 .service-list div:nth-child(3) dt{
  border-color: #00A9AA;  
}
.cont03-01 .service-list dd{
  font-size: 1.4rem; 
}
.cont03-01 .keywords{
  padding: 20px 3.75% 30px;
  background:#EEEEF0;  
}
.cont03-01 .keywords .ttl-line{
  margin-bottom: 25px; 
}
.cont03-01 .keywords .ttl-line span{
  background:#EEEEF0; 
}
.cont03-01 .keywords ul{
  display: flex;
  justify-content: space-between;  
}
.cont03-01 .keywords ul li{
  width: calc((100% - 30px)/3);
  padding: 12px 10px;
  background: #B66C6A;
  text-align:center;
  color: #FFF;
  font-size: 1.8rem;
  line-height:1.2;  
}
.cont03-01 .keywords+.note{
  margin-top: 3px;
  font-size: 1.1rem; 
}

/* cont03-02 */
.cont03-02 .cont-hd{
  background-image:url(../image/bg_cont_hd_03_02.jpg);  
}
.cont03-02 .box01{
  padding-top: 113px;  
}
.cont03-02 .ttl-col span{
	background: #B66C6A;	
}
.cont03-02 .ttl-col span::before{
	border-right-color: #B66C6A;
}
.cont03-02 .ttl-col span::after{
	border-left-color: #B66C6A;
}
.cont03-02 .box01{
  margin-bottom: 80px;  
}
.cont03-02 .box01 .guarantee-box{
  position: relative;
  margin-bottom: 30px;
  padding: 65px 20px 50px;
  background:#F0ECE1;  
  text-align: center;
}
.cont03-02 .box01 .guarantee-box h4{
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  transform: translateY(-50%);
}
.cont03-02 .box01 .guarantee-box h5{
  margin-bottom: 15px;
 font-size: 2.6rem;
 color: #ED9203;
}
.cont03-02 .box01 .guarantee-box .txt{
  margin-bottom: 25px;
  font-size: 1.6rem;  
}
.cont03-02 .equipment .ttl-line{
  margin-bottom: 20px;
}
.cont03-02 .equipment .equipment-list{
  display: flex;
  justify-content: center;
  gap: 30px;
}
.cont03-02 .equipment .equipment-list li{
  max-width: 251px;
  width: calc((100% - 90px) / 4);  
}
.cont03-02 .equipment .notes{
  margin-top: 10px;
  font-size: 1.1rem;  
}
.cont03-02 .equipment .notes li{
  text-indent: -1em;
  padding-left: 1em;  
}

.cont03-02 .box02{
  margin-bottom: 80px;
  padding-left: 11.66%;
  padding-right: 11.66%;  
}
.cont03-02 .box02 > .txt{
  margin-bottom: 30px;
  text-align:center;
  font-size: 1.6rem;  
}
.cont03-02 .box02 .ttl-line{
  margin-bottom: 30px;  
}
.cont03-02 .box02 .trouble-list{
  display: flex;
  justify-content: space-between;
  margin-bottom: 35px;  
}
.cont03-02 .box02 .trouble-list li{
  max-width: 136px;
  text-align:center;  
}
.cont03-02 .box02 .trouble-list li+li{
  margin-left: 10px;  
}
.cont03-02 .box02 .trouble-list li:last-child{
  max-width: 283px;  
}
.cont03-02 .box02 .trouble-list .pic{
  margin-bottom: 10px;  
}
.cont03-02 .box02 .trouble-list h4{
  margin-bottom: 5px;
  font-size: 1.9rem;
  line-height:1.2;
}
.cont03-02 .box02 .trouble-list .txt{
  font-size: 1.4rem;  
}
.cont03-02 .box02 dl{
  border:1px solid #808080;
  display: flex;
  align-items: center;  
}
.cont03-02 .box02 dl dt{
  width: 26.6%;
  padding: 20px 15px;
  background:#E5E5E5;
  text-align:center;
  font-size: 1.6rem;
  line-height:1.2;  
}
.cont03-02 .box02 dl dd{
  width: 73.4%;
  padding: 0 4.5%;
  display: flex;
  font-size: 1.6rem;
  line-height:1.2;  
}
.cont03-02 .box02 dl dd p span{
  display: inline-block;
  padding: 3px 12px 4px;
  margin-right: 10px;
  background: #E5E5E5;
  font-size: 1.3rem;  
}
.cont03-02 .box02 dl dd p+p{
  margin-left: 40px;  
}
.cont03-02 .box02 dl+.note{
  margin-top: 10px;
  font-size: 1.1rem;  
}

.cont03-02 .box03 .feature-list{
  display: flex;
  justify-content: space-between;
  max-width: 1012px;
  margin: 0 auto;  
}
.cont03-02 .box03.feature-list li+li{
  margin-left: 10px
}
.cont03-02 .box03 .feature-list+.note{
  max-width: 1012px;
  margin: 10px auto 0; 
  font-size: 1.1rem;    
}


/* cont03-03 */
.cont03-03 .cont-hd{
  background-image:url(../image/bg_cont_hd_03_03.jpg);  
}
.cont03-03 .pic+.note{
  margin-top: 10px;
  font-size: 1.1rem;
  text-align: right;  
}
.cont03-03 .voice{
  margin-top: 35px;  
}












/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  .page-ttl {
    height: 58.66vw;
    background-image:url(../image/bg_ttl_pc.jpg);
  }
  .page-ttl h1 {
    top: 50%;
    transform: translate(-50%,-50%);
    width:100%;
  }
  .page-ttl h1 .en{
    margin-bottom: 5px;
    font-size: 3.6rem;
    letter-spacing:.2em;
  }
  .page-ttl h1 .ja{
    font-size: 1.5rem;
  }  
  #Footer .ft-cont::after{
    background: transparent;
  }

/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/
  .sec-quality{
    padding-bottom: 40px;  
  }
  .sec-quality .inner{
    padding: 0;  
  }
  
/* intro
-----------------------------------------------------------------*/
  .intro{
    margin-top: 0; 
  }
  .intro .inner{
    max-width: 100%;  
  }
  .intro-cont{
    padding: 35px 0 30px;     
  }
  .intro-cont h2{
    margin-bottom: 15px;
    font-size: 1.6rem;
  }
  .intro-cont .txt{
    font-size: 1.3rem;
    line-height: 1.8;
  }


/* tab-nav
-----------------------------------------------------------------*/
  .tab-nav._upper{
    margin-bottom: 35px;
  }
  .tab-nav._bottom{
    margin-top: 35px;  
  }
  .tab-nav ul li{
    height: 60px;
    padding-top: 12px;
    line-height:1.5;
    font-size: 1.6rem;
  }
  .tab-nav ul li.current::after,
  .tab-nav ul li:hover::after{
    border-width: 16px 8px;  
  }
  .tab-nav ul li small{
    display:block;
    font-size: 1.1rem;  
  }


/* tab-cont 汎用
-----------------------------------------------------------------*/
  .cont-box+.cont-box{
    margin-top: 40px;  
  }
  .cont-box .cont-hd{
    height: 345px;
    padding-top: 85px;
    margin-bottom: 30px;
  }
  .cont-box .cont-hd h2{
    width: 250px;
    padding: 20px 10px 20px;
    margin: 0 auto 30px;
    font-size: 1.5rem;
  }
  .cont-box .cont-hd .num{
    font-size: 3.6rem;
  }
  .cont-box .cont-hd h2::before,
  .cont-box .cont-hd h2::after{
    width: calc(50% - 25px);
  }
  .cont-box .cont-hd .txt{
    font-size: 1.8rem;
  }
  .cont-box h3.txt-lead{
    margin-bottom: 10px;
    font-size: 1.5rem;
  }
  .cont-box h3.txt-lead+.txt{
    margin-bottom: 30px;
    font-size: 1.2rem;
  }

/* ttl-col */
  .cont-box .ttl-col span{
    height: 50px;
    line-height: 1.3;
    padding: 6px 20px 0;
    font-size: 1.5rem;
  }
  .cont-box .ttl-col span::before,
  .cont-box .ttl-col span::after{
    border-width: 25px 14px;	
  } 

/* ttl-line */
  .cont-box .ttl-line span{
    padding: 0 15px;
    font-size: 1.6rem;
    line-height:1.5;
  }

/* voice */
  .cont-box .ttl-voice{
    font-size: 1.6rem;
  }
  #Page .cont-box .ttl-voice img{
    width: 70px; 
  }
  .cont-box .ttl-voice+.txt{
    font-size: 1.2rem; 
  }
  .cont-box .voice-list{
    max-width: 100%;
  }
  .cont-box .voice-list li{
    max-width: 100%;
    width:calc(50% - 5px);
  }
  .cont-box .voice-list li:nth-child(n+4){
    margin-top: 5px;  
  }
  .cont-box .voice .notes{
    max-width: 100%;
    margin: 15px auto 0;  
  }

/* col-box */
  .cont-box .col-box{
    padding: 45px 15px 20px;; 
  }

/* Quality01
-----------------------------------------------------------------*/
/* cont01-01 */
  .cont01-01 .cont-hd{
    background-image:url(../image/bg_cont_hd_01_01_sp.jpg);  
  } 
  .cont01-01 h3.txt-lead+.txt{
    margin-bottom: 45px;    
  }
  .cont01-01 .quality-check{
    padding: 45px 30px 40px;
  }
  .cont01-01 .check-list{
    display: block;
  }
  .cont01-01 .check-list li{
    width: 100%;
  }
  .cont01-01 .check-list li+li{
    margin-top: 28px; 
  }
  .cont01-01 .check-list li::after{
    right: 50%;
    top: auto;
    bottom: 0;
    transform: translate(50%,100%);
    border-width: 16px 14px;
    border-left-color: transparent;
    border-top-color: #FFF;
  }
  .cont01-01 .check-list li:nth-child(6)::after{
    display: none;	
  }
  .cont01-01 .check-list li div{
    height: 100%;
    background: no-repeat right bottom;	
  }
  .cont01-01 .check-list li:nth-child(1) div{
    background-size: 17px auto; 
  }
  .cont01-01 .check-list li:nth-child(2) div{
    background-size: 23px auto; 	
  }
  .cont01-01 .check-list li:nth-child(3) div{
    background-size: 21px auto; 	
  }
  .cont01-01 .check-list li:nth-child(4){
    width: 100%;
  }
  .cont01-01 .check-list li:nth-child(4) div{
    background-size: 25px auto; 	
  }
  .cont01-01 .check-list li:nth-child(5){
    width: 100%;
  }
  .cont01-01 .check-list li:nth-child(5) div{
    background-size: 19px auto; 	
  }
  .cont01-01 .check-list li:nth-child(6){
    width: 100%;
  }
  .cont01-01 .check-list li:nth-child(6) div{
    background-size: 22px auto; 	
  }
  .cont01-01 .check-list h4{
    margin-bottom: 10px;
    padding: 10px;
    font-size: 1.5rem;
  }
  .cont01-01 .check-list .copy{
    margin-bottom: 3px;
    font-size: 1.6rem;
  }
  .cont01-01 .check-list li:nth-child(4) .copy:nth-of-type(n+2){
    margin-top: 10px;	
  }
  .cont01-01 .check-list .txt{
    font-size: 1.2rem;
  }

/* Quality02
-----------------------------------------------------------------*/
/* cont02-01 */
  .cont02-01 .cont-hd{
    background-image:url(../image/bg_cont_hd_02_01_sp.jpg);  
  }
  .cont02-01 .step-box{
    margin-bottom: 30px;
    padding: 30px 30px 40px;
  }
  .cont02-01 .step-list{
    display: block;
    margin-bottom: 30px;
  }
  .cont02-01 .step-list li{
    width: 100%;
  }
  .cont02-01 .step-list li+li{
     margin-top: 60px;
  }
  .cont02-01 .step-list li+li::before{
    left: 50%;
    top: -10px;
    transform: translate(-50%,-100%);
    border: 17px solid transparent;
    border-left-color: transparent;
    border-top-color: #1A1A1A;  
  }
  .cont02-01 .step-list h4{
    margin-bottom: 12px;
    font-size: 2rem;
  }
  .cont02-01 .step-list .pic{
    margin-bottom: 10px;
  }
  .cont02-01 .step-list .ttl{
    text-align: center;
  }
  .cont02-01 .voice{
    padding: 0 15px; 
  }



/* cont02-02 */
  .cont02-02 .cont-hd{
    background-image:url(../image/bg_cont_hd_02_02_sp.jpg);  
  }
  .cont02-02 .cont-hd .txt {
    position: relative;
  }
  .cont02-02 .cont-hd .txt sup{
    font-size: 1.1rem;  
  }
  .cont02-02 .cont-hd .txt .sup01{
    transform:translate(-8em,-70%);
  }
  .cont02-02 .cont-hd .txt .sup02{
    transform:translate(-3em,-70%);
  }
  .cont02-02 .layout-box{
    display: block;
    margin-bottom: 22px;
    padding: 0 30px; 
  }
  .cont02-02 .layout-box .pic{
    position: static;
    width: 100%;
  }
  .cont02-02 .layout-box .txt-area{
    padding-left: 0;
    margin-bottom: 25px;  
  }
  .cont02-02 .layout-box .txt-area .txt-lead{
    text-align: center;
  }
  .cont02-02 .layout-box .txt-area .txt-lead+.txt{
    margin-bottom: 20px;
    text-align: center;
    line-height:2;
  }
  .cont02-02 .layout-box .txt-area .logo{
    width: 261px;
    margin: 0 auto; 
  }
  .cont02-02 .hug-box{
    padding: 0;
    margin-bottom: 105px;  
  }
  .cont02-02 .hug-box .pic{
    left: 105px;
    top: 75px;
    width: 270px;
    transform:none;  
  }
  .cont02-02 .hug-box .txt{
    margin-left: 0;
    padding: 20px 30px 90px;
    font-size: 1.2rem;  
  }
  .cont02-02 .hug-box .note{
    margin-top: 6px;
    text-align: right; 
  }
  .cont02-02 .col-box{
    margin: 0 15px; 
  }
  .cont02-02 .ttl-col span{
    background: #1A6D81;
    padding: 6px 10px 0;	
  }
  .cont02-02 .ttl-col span::before{
    border-right-color: #1A6D81;
  }
  .cont02-02 .ttl-col span::after{
    border-left-color: #1A6D81;
  }
  .cont02-02 .equipment-list{
    flex-wrap:wrap;
  }
  .cont02-02 .equipment-list li{
    max-width: 100%;
    width: calc(50% - 5px);
  }
  .cont02-02 .equipment-list li:nth-child(n+3){
    margin-top: 10px; 
  }
  .cont02-02 .equipment-list .txt{
    font-size: 1.2rem;
  }

/* Quality03
-----------------------------------------------------------------*/
/* cont03-01 */
  .cont03-01 .cont-hd{
    background-image:url(../image/bg_cont_hd_03_01_sp.jpg);
    margin-bottom: 60px;  
  }
  .cont03-01 .col-box{
    margin: 0 15px 25px;
    border:none;    
  }
  #Page .cont03-01 .col-box img{
    width: 285px; 
  }
  .cont03-01 .col-box p{
    text-align: center;  
  }
  .cont03-01 .service-list{
    display: none;
  }
  .cont03-01 .keywords{
    display: none; 
  }
  .cont03-01 .keywords+.note{
     display: none; 
  }

/* cont03-02 */
  .cont03-02 .cont-hd{
    background-image:url(../image/bg_cont_hd_03_02_sp.jpg);  
  }
  .cont03-02 .box01{
    padding-top: 65px;
    margin-bottom: 50px;    
  }
  .cont03-02 .box01 .ttl-col span{
    height: 40px;
    line-height:38px;
    padding-top: 0;
    font-size: 1.8rem; 
  }
  .cont03-02 .box01 .ttl-col span::before,
  .cont03-02 .box01 .ttl-col span::after{
    border-width: 20px 14px;
  }
  .cont03-02 .col-box{
    margin-left: 15px;
    margin-right: 15px;
  }
  .cont03-02 .box01 .guarantee-box{
    margin-bottom: 0;
    padding: 40px 20px 50px;
  }
  .cont03-02 .box01 .guarantee-box h4{
    left:50%;
    width: 176px;
    transform: translate(-50%,-50%);
  }
  .cont03-02 .box01 .guarantee-box h5{
    margin-bottom: 8px;
   font-size: 1.5rem;
  }
  .cont03-02 .box01 .guarantee-box .txt{
    margin-bottom: 20px;
    font-size: 1.2rem;  
  }
  .cont03-02 .box01 .guarantee-box .pic{
    width: 85%;
    margin: 0 auto; 
  }
  .cont03-02 .equipment .ttl-line{
    display: none;
  }
  .cont03-02 .equipment .equipment-list{
    display: none;
  }
  .cont03-02 .equipment .notes{
    display: none;
  }
  
  .cont03-02 .box02{
    margin-bottom: 50px;
    padding-left: 15px;
    padding-right: 15px;  
  }
  .cont03-02 .box02 > .txt{
    margin-bottom: 10px;
    font-size: 1.2rem;  
  }
  .cont03-02 .box02 .ttl-line{
    margin-bottom: 15px;  
  }
  .cont03-02 .box02 .trouble-list{
    flex-wrap:wrap;
    justify-content: center;
    margin-bottom: 20px;  
  }
  .cont03-02 .box02 .trouble-list li{
    max-width: 100%;
    width: calc((100% - 30px)/3);
    margin: 0 5px; 
  }
  .cont03-02 .box02 .trouble-list li+li{
    margin-left: 5px;  
  }
  .cont03-02 .box02 .trouble-list li:last-child{
    max-width: 100%;
    width: 62%;
    margin-top: 20px;  
  }
  .cont03-02 .box02 .trouble-list .pic{
    margin-bottom: 5px;  
  }
  .cont03-02 .box02 .trouble-list h4{
    margin-bottom: 5px;
    font-size: 1.5rem;
  }
  .cont03-02 .box02 .trouble-list .txt{
    font-size: 1.1rem;
    line-height:1.5;  
  }
  .cont03-02 .box02 dl{
    display: block;
  }
  .cont03-02 .box02 dl dt{
    width: 100%;
    padding: 10px;
    font-size: 1.4rem;
  }
  .cont03-02 .box02 dl dd{
    width: 100%;
    padding: 20px 25px;
    display: block;
    font-size: 1.5rem; 
  }
  .cont03-02 .box02 dl dd p span{
    width: 95px;
    padding: 5px 10px;
    margin-right: 10px;
    font-size: 1.2rem;
    text-align:center;  
  }
  .cont03-02 .box02 dl dd p+p{
    margin: 10px 0 0;  
  }
  .cont03-02 .box02 dl+.note{
    margin-top: 5px;  
  }
  
  .cont03-02 .box03 .ttl-col span{
    padding: 6px 5px 0;
  }
  .cont03-02 .box03 .feature-list{
    flex-wrap:wrap;
    max-width: 100%;
    width: 86%;
    margin: 0 auto;  
  }
  .cont03-02 .box03 .feature-list li{
    width: calc(50% - 10px); 
  }
  .cont03-02 .box03 .feature-list li+li{
    margin-left: 0;
  }
  .cont03-02 .box03 .feature-list li:nth-child(n+3){
    margin-top: 15px;
  }
  .cont03-02 .box03 .feature-list+.note{
    max-width: 100%;
    width: 86%;
    margin: 15px auto 0;    
  }


/* cont03-03 */
  .cont03-03 .cont-hd{
    background-image:url(../image/bg_cont_hd_03_03.jpg);  
  }
  .cont03-03 .txt-lead,
  .cont03-03 .txt-lead+.txt{
    display: none; 
  }
  .cont03-03 .pic{
    padding: 0 15px; 
  }
  .cont03-03 .pic+.note{
     padding: 0 15px;
  }
  .cont03-03 .voice{
    margin-top: 30px;
    padding: 0 15px;  
  }
  .cont03-03 .voice-list li:last-child{
    width: 100%;
    text-align:center; 
  }
  #Page .cont03-03 .voice-list li:last-child img{
    width: calc(50% - 5px);
  }


}