
/***********
module-conceptVisual
************/

.conceptVisual{
  padding-top: 0;
  padding-bottom: 150px;
  position: relative;
}
.conceptVisual::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: #e0dfdb;
}

.conceptVisual-wrap {
  position: relative;
  height: 700px;
}

.conceptVisual-img {
  width: 60%;
  height: 100%;
  background-position: center center;
  background-size: cover;
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: 0;
  transition: all 1.5s ease 0.5s;
}
.conceptVisual-img-add {  /* Add 2024-12-9 */
  background-size: contain;
  background-repeat: no-repeat;
}
.conceptVisual-img img {
  display: none;
}
.is-loaded .conceptVisual-img {
  opacity: 1;
}


.conceptVisual-block {
  position: absolute;
  z-index: 2;
  left:64%;
  bottom: 50px;
}


.conceptVisual-lead {
  font-size: 600%;
  line-height: 1.3;
  letter-spacing: 0.05em;
  word-break: normal;
  font-family: 'Poly', serif;
}

.conceptVisual-lead-item{
  opacity: 0;
  transition: all 1.5s ease;
}
.is-loaded .conceptVisual-lead-item {
  opacity: 1;
}
.conceptVisual-lead-item:nth-child(1){
  margin-left: -2em;
  transition-delay: 0.8s;
}
.conceptVisual-lead-item:nth-child(2){
  margin-left: 2.5em;
  transition-delay: 1.0s;
}
.conceptVisual-lead-item:nth-child(3){
  margin-left: 0.5em;
  transition-delay: 1.2s;
}


.conceptVisual-lead-item span {
  display: inline-block;
  position: relative;
  line-height: 1;
  white-space: nowrap;
}
.conceptVisual-lead-item span::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #734233;
  position: absolute;
  left: 0;
  bottom: 0.15em;
  transform: scaleX(0);
  transform-origin: left top;
  transition: all 2s ease;
}
.conceptVisual-lead-item:nth-child(1)  span::before{
  transition-delay: 1.2s;
}
.conceptVisual-lead-item:nth-child(2)  span::before{
  transition-delay: 1.4s;
}
.conceptVisual-lead-item:nth-child(3)  span::before{
  transition-delay: 1.6s;
}

.is-loaded .conceptVisual-lead-item span::before{
  transform: scaleX(1);
}

.conceptVisual-text {
  padding-top: 100px;
  font-size: 121%;
  line-height: 1.8;
  word-break: normal;
  opacity: 0;
  transition: all 1.5s ease 1.4s;
}

.is-loaded .conceptVisual-text {
  opacity: 1;
}



.conceptVisual-container {
  position: relative;
  padding-top: 100px;
  display: flex;
  opacity: 0;
  transition: all 1.5s ease 0.5s;
}
.is-loaded .conceptVisual-container {
  opacity: 1;
}
.conceptVisual-heading {
}
.conceptVisual-heading-title {
  font-size: 185%;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.7;
  white-space: nowrap;
}
.conceptVisual-heading-title span {
  display: inline-block;
  padding-bottom: 0.6em;
}
.conceptVisual-container-inner {
  flex: 1;
  padding-left: 8%;
}
.conceptVisual-copy {
  font-size: 116%;
  line-height: 2.2;
}


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


  .conceptVisual{
    padding-top: 0;
    padding-bottom: 80px;
    margin-bottom: 40px;
    height: auto;
  }
  .conceptVisual::before{
    width: 100%;
    height: 100%;
  }

  .conceptVisual-wrap {
    height: auto;
  }

  .conceptVisual-img {
    width: 100%;
    height: 400px;
    left: 0;
    top: 0;
    bottom: auto;
  }
  .conceptVisual-img-add {  /* Add 2024-12-9 */
    background-size: contain;
    background-repeat: no-repeat;
  }

  .conceptVisual-block {
    position: static;
    padding-top: 340px;
  }

  .conceptVisual-lead {
    font-size: 350%;
  }

  .conceptVisual-lead-item{
    opacity: 0;
    transition: all 1.5s ease;
    line-height: 1;
  }
  .is-loaded .conceptVisual-lead-item {
    opacity: 1;
  }
  .conceptVisual-lead-item:nth-child(1){
    margin-left: 1em;
    transition-delay: 0.8s;
  }
  .conceptVisual-lead-item:nth-child(2){
    margin-left: 5em;
    transition-delay: 1.0s;
  }
  .conceptVisual-lead-item:nth-child(3){
    margin-left: 2.5em;
    transition-delay: 1.2s;
  }

  .conceptVisual-text {
    font-size: 100%;
    padding: 30px 8%;
  }

  .is-loaded .conceptVisual-text {
    opacity: 1;
  }


  .conceptVisual-container {
    padding-top: 40px;
    display: block;
  }
  .conceptVisual-heading {
  }
  .conceptVisual-heading-title {
    font-size: 131%;
    padding-bottom: 1.5em;
  }
  .conceptVisual-heading-title span {
  }
  .conceptVisual-container-inner {
    flex: 1;
    padding-left: 0;
  }
  .conceptVisual-copy {
    font-size: 100%;
    line-height: 2.2;
  }

}

/***********
module-conceptSection
************/

.conceptSection {
  position: relative;
}

.conceptSection-img{
  background-position:  center center;
  background-size: cover;
  opacity: 0;
  transition: opacity 1.5s ease;
}
.conceptSection-img img{
  display: none;
}


.conceptSection-block{
  position: relative;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 50px 60px;
  z-index: 9;
  opacity: 0;
  transition: opacity 1.5s ease;
}

.conceptSection-title {
  font-size: 185%;
  letter-spacing: 0.08em;
  padding-bottom: 1.2em;
}
.conceptSection-text {
  font-size: 116%;
  line-height: 2;
}

.conceptSection.is-show .conceptSection-block,
.is-show .conceptSection-img{
  opacity: 1;
}

/*
01
*/

.conceptSection01{
  margin-top: 180px;
}
.conceptSection01-img{
  width: 42%;
  min-width: 400px;
  height: 700px;
  position: absolute;
  right: 0;
  top: 80px;
  transition-delay: 0.6s;
}
.conceptSection01-block{
  width: 31%;
  min-width: 400px;
  margin-left: 22%;
  transition-delay: 0.3s;
}

/*
02
*/

.conceptSection02{
  margin-top: 240px;
}
.conceptSection02-img{
  width: 42%;
  min-width: 400px;
  height: 700px;
  transition-delay: 0.3s;
}
.conceptSection02-block{
  width: 42%;
  min-width: 460px;
  margin-left: 22%;
  position: absolute;
  left: 18%;
  top:38%;
  transition-delay: 0.6s;
}

/*
03
*/

.conceptSection03{
  margin-top: 60px;
  padding-bottom: 200px;
  display: flex;
  flex-direction: column-reverse;
}
.conceptSection03-img{
  width: 52%;
  min-width: 560px;
  height: 440px;
  margin-left: 30%;
  margin-top: 100px;
  transition-delay: 0.6s;
}
.conceptSection03-block{
  width: 34%;
  min-width: 460px;
  margin-left: 10%;
  transition-delay: 0.3s;
}

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

  /*
  01
  */

  .conceptSection01-img{
    width: 55%;
    min-width: initial;
    min-width: auto;
  }
  .conceptSection01-block{
    margin-left: 5%;
  }

  /*
  02
  */

  .conceptSection02{
  }
  .conceptSection02-img{
    width: 55%;
    min-width: initial;
    min-width: auto;
  }
  .conceptSection02-block{
    width: 45%;
    min-width: initial;
    min-width: auto;
    left: 28%;
  }

  /*
  03
  */

}

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


  .conceptSection-block{
    padding: 40px 30px;
  }

  .conceptSection-title {
    font-size: 131%;
  }
  .conceptSection-text {
    font-size: 100%;
    line-height: 1.8;
  }

  .conceptSection.is-show .conceptSection-block,
  .is-show .conceptSection-img{
    opacity: 1;
  }

  /*
  01
  */

  .conceptSection01{
    margin-top: 40px;
  }
  .conceptSection01-img{
    width: 85%;
    min-width: initial;
    min-width: auto;
    height: 65vmin;
    position: static;
    right: auto;
    left: 0;
    top: 40px;
  }
  .conceptSection01-block{
    width: 85%;
    min-width: initial;
    min-width: auto;
    margin-top: -20px;
    margin-left: 15%;
  }

  /*
  02
  */

  .conceptSection02{
    margin-top: 100px;
  }
  .conceptSection02-img{
    width: 75%;
    margin-left: 25%;
    min-width: initial;
    min-width: auto;
    height: 65vmin;
  }
  .conceptSection02-block{
    width: 88%;
    min-width: initial;
    min-width: auto;
    margin-left: 0%;
    margin-right: 12%;
    position: static;
    margin-top: -15px;
  }

  /*
  03
  */

  .conceptSection03{
    margin-top: 60px;
    padding-bottom: 100px;
    display: block;
  }
  .conceptSection03-img{
    width: 100%;
    min-width: initial;
    min-width: auto;
    height: 45vmin;
    margin-left: 0%;
  }
  .conceptSection03-block{
    width: 95%;
    min-width: initial;
    min-width: auto;
    margin-left: 10%;
    margin-top: -20px;
  }

}


/***********
module-conceptProducts
************/

.conceptProducts{
  display: flex;
  height: 500px;
  background-color: #e0ddd7;
  border-top: 1px solid #fff;
}
.conceptProducts-img{
  width: 56%;
  height: 100%;
  background-position: center center;
  background-size: cover;
}
.conceptProducts-img img{
  display: none;
}
.conceptProducts-block {
  flex: 1;
}
.conceptProducts-inner {
  max-width: 630px;
  height: 100%;
  padding: 60px 60px 60px 60px;
  position: relative;
}

.conceptProducts-title {
  font-family: 'Poly', serif;
  font-weight: normal;
  font-size: 220%;
  letter-spacing: 0.08em;
  padding-bottom: 1em;
}
.conceptProducts-text {
  font-size: 108%;
  line-height: 2;
}

.conceptProducts-link {
  position: absolute;
  right: 60px;
  bottom: 60px;
}

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

  .conceptProducts{
    display: block;t
    height: auto;
  }
  .conceptProducts-img{
    width: auto;
    height: 60vmin;
  }
  .conceptProducts-img img{
    display: none;
  }
  .conceptProducts-block {
  }
  .conceptProducts-inner {
    max-width: initial;
    max-width: auto;
    height: auto;
    padding: 30px 8% 60px;
  }

  .conceptProducts-title {
    font-size: 139%;
  }
  .conceptProducts-text {
    font-size: 100%;
    line-height: 1.8;
  }

  .conceptProducts-link {
    position: absolute;
    right: 8%;
    bottom: 30px;
  }

}


/***********
aboutSection
************/


.aboutSection {
  padding-top: 150px;
  opacity: 0;;
  transition: all 1.5s ease 0.2s;
}

.aboutSection-num {
  padding-bottom: 40px;
  font-family: "Times New Roman",Times,serif;
  line-height: 1;
}
.aboutSection-num small {
  font-size: 154%;
  letter-spacing: 0.08em;
}
.aboutSection-num span {
  display: inline-block;
  font-size: 300%;
  padding-left: 0.8em;
  transform: scaleY(0.8);
  transform-origin: bottom;
}

.aboutSection-heading {
  background-color: #fff;
  padding: 30px 50px;
  margin-bottom: 60px;
}
.aboutSection-heading-title {
  /*font-size: 220%;*//* Commented 2025-2-12 */
  font-feature-settings: "palt";
  font-weight: normal;
  letter-spacing: 0.15em;
}
.aboutSection-heading-subTitle {
  font-family: "Times New Roman",Times,serif;
  font-size: 124%;
  font-weight: normal;
  letter-spacing: 0.08em;
}


.aboutSection-list {
  display: flex;
  margin-left: -3%;
}
.aboutSection-list li {
  margin-left: 3%;
  width: 31.3%;
}
.aboutSection-title {
  font-size: 185%;
  font-feature-settings: "palt";
  font-weight: normal;
  padding-bottom: 1em;
  letter-spacing: 0.1em;
}
.aboutSection-text {
  font-size: 116%;
  line-height: 1.8;
  text-align: justify;
}
.aboutSection-img {
  padding-top: 30px;
}

.aboutSection.is-show{
  opacity: 1;
}

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

  .aboutSection {
    padding-top: 40px;
  }

  .aboutSection-num {
    padding-bottom: 20px;
  }
  .aboutSection-num small {
    font-size: 100%;
  }
  .aboutSection-num span {
    font-size: 200%;
  }

  .aboutSection-heading {
    padding: 15px 5%;
    margin-bottom: 20px;
  }
  .aboutSection-heading-title {
    font-size: 147%;
    letter-spacing: 0.05em;
  }
  .aboutSection-heading-subTitle {
    font-size: 93%;
  }


  .aboutSection-list {
    display: block;
    margin-left: 0;
  }
  .aboutSection-list li {
    margin-left: 0;
    padding-bottom: 50px;
    width: auto;
    display: flex;
    flex-direction: column;
  }
  .aboutSection-title {
    order: 2;
    font-size: 139%;
    padding-top: 1em;
    padding-bottom: 1em;
    letter-spacing: 0.1em;
  }
  .aboutSection-text {
    order: 3;
    font-size: 100%;
  }
  .aboutSection-img {
    order: 1;
    padding-top: 0;
  }

  .aboutSection.is-show{
    opacity: 1;
  }


}



