@charset "UTF-8";

/* シンプルフェードイン */
.js_fadeIn {
  opacity: 0;
  transition: opacity .5s ease .3s;
}
.js_fadeIn.js_active {
  opacity: 1;
}

/* conceptHead -------------------- */
.conceptHead{
  position: relative;
  padding-top: 75%;
  margin-bottom: 60px;
}
.conceptHead_title{
  color: #3e9cd0;
  font-weight: normal;
  background: rgba(255, 255, 255, 0.9);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 3;
  text-align: center;
  font-size: 3.4rem;
  line-height: 5.1rem;
  padding: 3%;
  letter-spacing: 4px;
  transition-duration: 0.6s;
  transition-delay: 0.6s;
  font-weight: 400;
}
.conceptHead_imgList{
  list-style: none;
}
.conceptHead_imgList_item{
  position: absolute;
}
.conceptHead_imgList_item.img01{
  width: 54%;
  top: 0;
  left: 0;
  z-index: 1;
  padding-bottom: 20px;
  background: #3e9cd0;
  transition-delay: 0.2s;
}
.conceptHead_imgList_item.img02{
  width: 46%;
  right: 0;
  top: 0;
  z-index: 1;
  transition-delay: 0.4s;
}
.conceptHead_imgList_item.img03{
  width: 30%;
  bottom: 0;
  left: 0;
  z-index: 1;
  transition-delay: 0.8s;
}
.conceptHead_imgList_item.img04{
  width: 38%;
  top: 36.8%;
  right: 0;
  z-index: 2;
  transition-delay: 0.7s;
}
.conceptHead_imgList_item.img05{
  width: 43%;
  z-index: 2;
  top: 30%;
  left: 0;
  transition-delay: 0.5s;
}
.conceptHead_imgList_item.img06{
  width: 29%;
  z-index: 1;
  bottom: 0;
  right: 0;
  transition-delay: 1.0s;
}
.conceptHead_imgList_item.img07{
  width: 41%;
  margin-top: 0;
  bottom: 0;
  left: 50.5%;
  transform: translateX(-50%);
  transition-delay: 0.9s;
}
.conceptHead_logo{
  position: absolute;
  bottom: 6%;
  left: 50%;
  transform: translateX(-50%);
  max-width: 35%;
  z-index: 3;
  transition-delay: 0.9s;
}

/* conceptCatch -------------------- */
.conceptCatch{
  margin-bottom: 60px;
}

.conceptCatch_text{
  text-align: center;
  font-size: 2.6rem;
  font-weight: 300;
  line-height: 3.64rem;
  margin-bottom: 40px;
}

/* conceptNav -------------------- */
.conceptNav{
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 20px 2%;
  margin-bottom: 40px;
}
.conceptNav_item{
  width: 49%;
}
.conceptNav_item a{
  background-color: #3e9cd0;
  border-radius: 5px;
  display: block;
  color: #fff;
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.8rem;
  text-align: center;
  padding: 22px 80px 22px 20px;
  text-decoration: none;
  position: relative;
  height: 100%;
}
.conceptNav_item a::before{
  content: "";
  position: absolute;
  top: 0;
  right: 60px;
  width: 1px;
  height: 100%;
  border-left: 1px solid #fff;
}
.conceptNav_item a::after{
  content: "";
  position: absolute;
  top: calc(50% - 10px);
  right: 21px;
  width: 15px;
  height: 15px;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
  border-radius: 2px;
}

/* conceptCont -------------------- */
.conceptCont{
  padding-top: 80px;
  scroll-margin-top: 123px;
}
.conceptCont:not(:last-child){
  border-bottom: 1px solid #3e9cd0;
  padding-bottom: 40px;
}

.conceptCont_title{
  font-size: 3.8rem;
  line-height: 5.32rem;
  font-weight: 500;
  text-align: center;
  color: #3e9cd0;
  margin-bottom: 40px;
}

.conceptCont_image{
  margin-bottom: 40px;
}

.conceptCont_imgList{
  width: 90%;
  margin: 0 auto 40px;
  list-style: none;
  display: flex;
}

.conceptCont_text{
  text-align: center;
  font-size: 2.6rem;
  font-weight: 300;
  line-height: 4.68rem;
  margin-bottom: 40px;
}
.conceptCont_text_attentionR{
  text-align: right;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 3.24rem;
  margin-bottom: 40px;
}

.conceptCont_qualityBlock{
  border: 1px solid #3e9cd0;
  text-align: center;
  margin-bottom: 40px;
}
.conceptCont_qualityBlock_title{
  background-color: #3e9cd0;
  color: #fff;
  font-size: 3rem;
  font-weight: 300;
  line-height: 4.2rem;
  padding: 15px;
}
.conceptCont_qualityList{
  display: flex;
  padding: 28px;
  column-gap: 4%;
}
.conceptCont_qualityList_title{
  font-size: 2.2rem;
  line-height: 3.08rem;
  margin-bottom: 20px;
}
.conceptCont_qualityList_image{
  margin-bottom: 20px;
}
.conceptCont_qualityList_text{
  font-size: 1.8rem;
  line-height: 2.52rem;
}

.conceptCont_flow{
  display: flex;
  background-color: #3e9cd0;
  margin-bottom: 40px;
}
.conceptCont_flow_item{
  flex-grow:1;
  padding: 35px 3.5% 35px 1.5%;
}
.conceptCont_flow_item:not(:last-child){
  background: no-repeat url(/images/pc/content/fix/concept/price_flow_bg.svg) right center;
}
.conceptCont_flow_item:last-child{
  padding-right: 2%;
}
.conceptCont_flow_title{
  font-size: 2.5rem;
  line-height: 3.5rem;
  color: #fff;
  text-align: center;
  margin-bottom: 20px;
}
.conceptCont_flow_title_en{
  display: block;
  font-size: 1.2rem;
  line-height: 1.68rem;
  margin-top: 5px;
}

.conceptCont_bluelightMainImage{
  background-color: #EAF6FD;
  padding-top: 40px;
}
.conceptCont_bluelightMainImage img{
  max-width: 60%;
  margin-left: auto;
  margin-right: auto;
}

.conceptCont_bluelightMark{
  display: flex;
  align-items: center;
  margin-bottom: 60px;
}
.conceptCont_bluelightMark_image{
  width: 37%;
  box-shadow: 0px 0px 16px -10px rgb(0 0 0 / 60%);
  border-radius: 8%;
}
.conceptCont_bluelightMark_text{
  width: 63%;
  font-size: 1.9rem;
  line-height: 2.66rem;
  font-weight: 300;
  padding-left: 4%;
}

.conceptCont_function{
  display: flex;
  column-gap: 5%;
  width: 70%;
  margin: 0 auto 40px;
}
.conceptCont_function_item{
  flex-grow: 1;
}
.conceptCont_function_item img{
  max-height: 126px;
  width: auto;
  margin: 0 auto 25px;
}
.conceptCont_function_text{
  text-align: center;
  font-size: 2.4rem;
  color: #3e9cd0;
}

.conceptCont_service{
  display: flex;
  column-gap: 2%;
  margin-bottom: 80px;
}
.conceptCont_service_item{
  border: 1px solid #3e9cd0;
  text-align: center;
  width: 49%;
}
.conceptCont_service_title{
  font-size: 2.6rem;
  font-weight: 300;
  line-height: 3.64rem;
  background-color: #3e9cd0;
  color: #fff;
  padding: 16px 10px;
}
.conceptCont_service_inner{
  padding: 20px;
}
.conceptCont_service_image{
  margin-bottom: 15px;
}
.conceptCont_service_text{
  font-size: 2.1rem;
  line-height: 2.94rem;
  font-weight: 300;
  color: #3e9cd0;
}

.conceptCont_shopList{
  list-style: none;
  display: flex;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin-bottom: 40px;
}
.conceptCont_shopList_item{
  width: 25%;
  border-right: 1px solid #ccc;
}
.conceptCont_shopList_item a{
  display: block;
  text-decoration: none;
}
.conceptCont_shopList_image{
  padding: 12px;
  border-bottom: 1px solid #ccc;
}
.conceptCont_shopList_name{
  font-size: 1.5rem;
  color: #3c3c3c;
  padding: 15px 12px;
  position: relative;
}
.conceptCont_shopList_name::after{
  content: "";
  position: absolute;
  top: calc(50% - 7px);
  right: 12px;
  width: 12px;
  height: 12px;
  border-right: 3px solid #0059b4;
  border-top: 3px solid #0059b4;
  transform: rotate(45deg);
  border-radius: 2px;
}

.conceptCont_logo{
  max-width: 50%;
  margin: 150px auto 120px;
}