@charset "utf-8";

/*----------------------------
         Gcoat
-----------------------------*/

#gcoat .mainTitle{
  position: relative;
  background: url("../images/gcoat_mv_img.jpg") no-repeat center center / cover;
  padding-block: 50px 110px;
}
#gcoat .mainTitle h2{
  position: relative;
  padding-top: 10px;
  font-size: min(3.5vw, 36px);
  text-align: left;
}
#gcoat .mainTitle h2 img{
  width: min(72vw, 515px);
  aspect-ratio: 515 / 232;
}
#gcoat .mainTitle h2 .subTitle{
  position: absolute;
  top: 0;
  left: calc(min(32.43vw, 232px) - min(5.9vw, 22px));
  background: linear-gradient(90deg, #000 0%, #000 80%, transparent 100%);
  display: inline-block;
  padding: 14px;
  color: #fff;
}
#gcoat .mainTitle h2 .subTitle > span{
  display: block;
}
#gcoat .mainTitle .subTxt{
position: absolute;
  inset: auto 0 0 0;
  width: 100%;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.8) 70%, transparent 100%);
}
#gcoat .mainTitle .subTxt p{
  padding-block: 14px;
  font-size: min(3.4vw, 22px);
  vertical-align: middle;
  color: #fff;
}
#gcoat .mainTitle .subTxt p sup{
  vertical-align: super;
}
#gcoat .mainTitle .subTxt p small{
  display: inline-block;
  font-size: min(3vw, 16px);
  vertical-align: middle;
  transform: translateY(-2px);
}
@media screen and (max-width: 768px) {  
  #gcoat .mainTitle{
    background: url("../images/gcoat_mv_img.jpg") no-repeat right 30% center / cover;
    padding-block: 40px 100px;
  }
} /* -SP- */

.bgRed {
  background-color: #923636;
  padding: 35px 0;
}
.mainMenu .anchorLinks {
  display: flex;
  justify-content: center;
  gap: 15px;
}
.mainMenu .anchorLinks li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: min(3.33em, 60px);
  height: 100%;
  padding: 0;
  background-color: #ffffff;
  line-height: 1.4;
  color: #923636;
  font-size: min(3.8vw, 18px);
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  transition: opacity 0.2s ease;
}
.mainMenu .anchorLinks li a span {
  font-size: min(2.8vw, 16px);
  display: block;
}
.mainMenu .anchorLinks li a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .mainMenu .anchorLinks{
    flex-wrap: wrap;
  }
  .mainMenu .anchorLinks li:not(:last-of-type) {
    width: calc((100% - 15px) / 2);
  }
  .mainMenu .anchorLinks li:last-of-type{
    width: 100%;
  }
} /* -SP- */
@media screen and (min-width: 769px) {
  .mainMenu .anchorLinks li {
    flex: 1;
    max-width: 220px;
  }  
} /* -PC only- */

#gcoat main section#gcoatLead{
  position: relative;
  background-color: #e1d9c3;
  padding-top: 15px;
  padding-bottom: 0px;
  z-index: 1;
}
#gcoatLead::after{
  content: "";
  display: block;
  width: 100%;
  height: 65px;
  background-color: #222;
}
#gcoatLead .inner{
  position: relative;
  padding: 43px 5% 0;
  background-color: #fff;
  z-index: 2;
}
#gcoatLead .inner::after{
  content: "";
  position: absolute;
  inset: calc(100% - 0.5px) 0 auto 0;
  width: 100%;
  height: 65px;
  background-color: #fff;
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);  
}
#gcoatLead .fontMin p{
  font-size: min(3.2vw, 18px);
  text-align: center;
  letter-spacing: 0.025em;
}
#gcoatLead .fontMin p + p{
  margin-top: 1.7em;
}
#gcoatLead .fontMin + ul{
  margin: 39px auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 45px 5%;
  width: min(100%, 909px);
  list-style: none;
}
#gcoatLead .fontMin + ul li{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 108px;
  padding: 0;
  border: 1px solid #222;
  letter-spacing: 0.025em;
  text-align: center;
}
#gcoatLead .fontMin + ul li::after{
  content: "";
  position: absolute;
  inset: auto 0 -17px 0;
  display: block;
  width: 1px;
  height: 27px;
  margin-inline: auto;
  background-color: #222;
}
#gcoatLeadCatch{
  text-align: center;
  letter-spacing: 0.025em;
  font-size: min(3.4vw, 20px);
  line-height: 2;
}
#gcoatLeadCatch .txtEm{
  display: block;
  margin-block: 0.3em;
  font-weight: bold;
  font-size: min(8vw, 45px);
  text-align: center;
  line-height: 1.4;
}
#gcoatLeadCatch .txtRed{
  position: relative;
  font-weight: bold;
  color: #cd0000;
  font-size: min(4.27vw, 24px);
  text-align: center;

  display: inline;
  background-image: linear-gradient(90deg, #cd0000 0%, #cd0000 100%);
  background-repeat: no-repeat;
  background-size: 100% 1px;
  background-position: 0 1.3em;
}
@media screen and (max-width: 768px) {   
#gcoatLead::after,
#gcoatLead .inner::after{
  height: 40px;
}
  #gcoatLead .fontMin + ul{
    flex-wrap: wrap;
  }
  #gcoatLead .fontMin + ul li{
    width: min(calc((100% - 5%) / 2));
  }  
} /* -SP- */
@media screen and (min-width: 769px) {
  #gcoatLead .fontMin + ul li{
    flex: 1;
  }  
} /* -PC only- */

#gcoat main section#aboutGcoat{
  padding-top: 0;
}