@charset "UTF-8";

/*******************************
MO240222LIMITED
*******************************/
.celford231226{
  display: block;
  width: 100%;
  color: #000000;
  box-sizing: border-box;
}

.celford231226 *{box-sizing: border-box;}


/*******************************
fadeInSetting
*******************************/
.celford231226 .fadeInBlock:not(.fadePC),
.celford231226 .fadeInList:not(.fadePC) > *{
  visibility: hidden;
  opacity: 0;
  transform: translate(0, 0);
  transition: opacity 3s ease 0.2s, transform 1s ease 0.2s;
  pointer-events: none;
  transition-duration: 1.2s;
}


.celford231226 .fadeInBlock:not(.fadePC).leftIn,
.celford231226 .fadeInList:not(.fadePC).leftIn > *{
  transform: translateX(-20%);
}

.celford231226 .fadeInBlock:not(.fadePC).rightIn,
.celford231226 .fadeInList.rightIn > *{
  transform: translateX(20%);
}

.celford231226 .fadeInBlock:not(.fadePC).upIn,
.celford231226 .fadeInList:not(.fadePC).upIn > *{
  transform: translateY(20%);
}

.celford231226 .fadeInBlock:not(.fadePC).downIn,
.celford231226 .fadeInList:not(.fadePC).downIn > *{
  transform: translateY(-20%);
}

.celford231226 .fadeInBlock:not(.fadePC).view,
.celford231226 .fadeInList:not(.fadePC) > *.view{
  visibility: visible;
  opacity: 1;
  transform: translate(0, 0);
  pointer-events: inherit;
}


/*******************************
itemLinks
*******************************/
.celford231226 .itemLinks{display: block;}
.celford231226 .itemLinks > ul{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0 1em;
  margin-top: calc((-1em * 1.692307692307692 + 1em) / 2);
  margin-bottom: calc((-1em * 1.692307692307692 + 1em) / 2);
  font-family: "Crimson Text", serif;
  font-size: calc(24 * (100vw / 750));
  line-height: 1.692307692307692;
  letter-spacing: 0.025em;
  text-align: center;
  font-weight: 200;
  font-style: normal;
}

.celford231226 .itemLinks > ul > li{display: block;}
.celford231226 .itemLinks > ul > li > a{
  display: inline-block;
  white-space: nowrap;
  color: #000000;
  text-decoration: none;
  position: relative;
}
.celford231226 .itemLinks > ul > li > a::after{
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background: #b2b2b2;
  position: absolute;
  bottom: 0.4rem;
  left: 0;
}


/*******************************
mvImg
*******************************/
.celford231226 .mv{
  display: block;
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.celford231226 .mv > a{display: block;}

.celford231226 .mv picture{
  display: block;
  width: 100%;
  height: auto;
}

.celford231226 .mv img{
  display: block;
  width: 100%;
  height: auto;
}

.celford231226 .mv .text{
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  padding: 0 calc(60 * (100vw / 750)) calc(40 * (100vw / 750));
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}

.celford231226 .mv .text > .mainTTL{
  display: block;
  width: 100%;
  margin: 0 0 calc(34 * (100vw / 750))  auto;
  padding-bottom: calc(13 * (100vw / 750));
  border-bottom: 1px solid #4d4d4d;
  position: relative;
  text-align: center;
}

.celford231226 .mv .text > .mainTTL > em{
  display: block;
  font-family: "altesse-std-64pt", sans-serif;
  font-weight: 400;
  font-size: calc(61.5942 * (100vw / 750));
  line-height: 1;
  letter-spacing: 0;
  font-feature-settings: "palt";
  position: absolute;
  top: calc(-77.2 * (100vw / 750));
  left: calc(-25.5 * (100vw / 750));
  transform: rotate(-10deg);
}

.celford231226 .mv .text > .mainTTL > span{
  display: block;
  font-family: "the-seasons", sans-serif;
  font-weight: 300;
  font-size: calc(83 * (100vw / 750));
  letter-spacing: 0.02em;
  line-height: 1;
  
}

.celford231226 .mv .text > p{
  display: block;
  width: 100%;
  margin: 0 0 0 auto;
  font-size: calc(26 * (100vw / 750));
  line-height: 2;
  margin-top: calc((-1em * 2 + 1em) / 2);
  margin-bottom: calc((-1em * 2 + 1em) / 2);
  text-align: center;
}



/*******************************
lede
*******************************/
.celford231226 .lede{
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: calc(140 * (100vw / 750)) 0 calc(352 * (100vw / 750));
  text-align: center;
  font-size: calc(24 * (100vw / 750));
  line-height: 2.2;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-top: calc((-1em * 2.2 + 1em) / 2);
  margin-bottom: calc((-1em * 2.2 + 1em) / 2);
  font-feature-settings: "palt";
}
.celford231226 .lede > p{font-weight: 500; font-feature-settings: 'palt';}

.celford231226 .lede > p > strong{color: #db7159;}


/*******************************
sec01
*******************************/
#sec01{
  display: block;
  padding-bottom: calc(120 * (100vw / 750));
  position: relative;
  z-index: 1;
}


#sec01 .setionTTL{
  display: block;
  width: 100%;
  margin-bottom: calc(80 * (100vw / 750));
  padding-bottom: calc(22 * (100vw / 750));
  border-bottom: 1px solid #ecb6aa;
  font-family: "the-seasons", sans-serif;
  font-weight: 400;
  font-size: calc(120 * (100vw / 750));
  letter-spacing: 0.025em;
  color: #ecb6aa;
  line-height: 0.6;
  text-align: center;
  position: relative;
  z-index: 1;
}

#sec01 .setionTTL > picture{
  display: block;
  width: calc(252 * (100vw / 750));
  height: auto;
  position: absolute;
  right: calc(50% - (248 + 69) * (100vw / 750));
  top: calc(-220 * (100vw / 750));
  z-index: -1;
}

#sec01 .setionTTL > picture > img{
  display: block;
  width: 100%;
  height: auto;
}

#sec01 .firstBlock{
  display: block;
  width: calc(660 * (100vw / 750));
  margin: 0 auto;
}

#sec01 .firstBlock > .img{display: block;}
#sec01 .firstBlock > .img > a,
#sec01 .firstBlock > .img figure,
#sec01 .firstBlock > .img img{display: block; width: 100%; height: auto;}

#sec01 .firstBlock > .img figure{
  border-radius: calc(150 * (100vw / 750)) 0 calc(150 * (100vw / 750)) 0;
  overflow: hidden;
}

#sec01 .firstBlock > .text{
  display: block;
  width: 100%;
  margin-top: calc(100 * (100vw / 750));
  padding-left: calc(40 * (100vw / 750));
}

#sec01 .firstBlock > .text > p{
  display: block;
  text-align: left;
  font-family: YuMincho, "Yu Mincho", "serif";
  font-size: calc(32 * (100vw / 750));
  font-weight: 800;
  font-feature-settings: "palt";
  letter-spacing: 0.075em;
  line-height: 1.89669375;
  margin-top: calc((-1em * 1.89669375 + 1em) / 2);
  margin-bottom: calc((-1em * 1.89669375 + 1em) / 2);
  white-space: nowrap;
}

#sec01 .firstBlock > .text > p > span{
  display: block;
  font-weight: 800;
  padding-left: calc(160 * (100vw / 750));
  margin-top: calc(18 * (100vw / 750));
}


#sec01 .secondBlock{
  display: block;
  width: 100%;
  padding-top: calc(100 * (100vw / 750));
  position: relative;
  z-index: 1;
}

#sec01 .secondBlock > .img{
  display: block;
  width: calc(580 * (100vw / 750));
  margin: 0 0 0 auto;
  padding-top: calc(62 * (100vw / 750));
  padding-right: calc(70 * (100vw / 750));
  position: relative;
}

#sec01 .secondBlock > .img > a{
  display: block;
  width: 100%;
  margin-bottom: calc(50 * (100vw / 750));
}
#sec01 .secondBlock > .img a > figure img{display: block; width: 100%; height: auto;}

#sec01 .secondBlock > .img > figure{
  display: block;
  width: calc(420 * (100vw / 750));
  position: absolute;
  right: 0;
  top: 0;
  z-index: -2;
}

#sec01 .secondBlock .itemLinks{text-align: right;}

#sec01 .secondBlock .itemLinks > ul{
  justify-content: flex-end;
  text-align: right;
}

/*******************************
sec02
*******************************/
#sec02{
  display: block;
  padding-top: calc(160 * (100vw / 750));
  padding-bottom: calc(190 * (100vw / 750));
  background: #f1f1f1;
  position: relative;
  z-index: 1;
}


#sec02 .setionTTL{
  display: block;
  width: 100%;
  margin-bottom: calc(80 * (100vw / 750));
  padding-bottom: calc(38 * (100vw / 750));
  border-bottom: 1px solid #b2b2b2;
  font-family: "ivyora-display", sans-serif;
  font-weight: 400;
  font-size: calc(120 * (100vw / 750));
  letter-spacing: 0.025em;
  color: #b2b2b2;
  line-height: 0.6;
  text-align: center;
  position: relative;
  z-index: 1;
}


#sec02 .firstBlock{
  display: block;
  width: calc(660 * (100vw / 750));
  margin: 0 auto;
}

#sec02 .firstBlock > .img{display: block;}
#sec02 .firstBlock > .img > a,
#sec02 .firstBlock > .img figure,
#sec02 .firstBlock > .img img{display: block; width: 100%; height: auto;}

#sec02 .firstBlock > .img figure{
  border-radius: 0 0 0 calc(150 * (100vw / 750));
  overflow: hidden;
}

#sec02 .firstBlock > .text{
  display: block;
  width: 100%;
  margin-top: calc(100 * (100vw / 750));
}

#sec02 .firstBlock > .text > p{
  display: block;
  text-align: center;
  font-family: YuMincho, "Yu Mincho", "serif";
  font-size: calc(32 * (100vw / 750));
  font-weight: 800;
  font-feature-settings: "palt";
  letter-spacing: 0.075em;
  line-height: 1.89669375;
  margin-top: calc((-1em * 1.89669375 + 1em) / 2);
  margin-bottom: calc((-1em * 1.89669375 + 1em) / 2);
}

#sec02 .firstBlock > .text > p > span{
  display: block;
  margin-top: calc(18 * (100vw / 750));
  font-weight: 800;
}


#sec02 .secondBlock{
  display: block;
  width: calc(510 * (100vw / 750));
  margin: calc(90 * (100vw / 750)) auto 0 auto;
  position: relative;
  z-index: 1;
}

#sec02 .secondBlock > .img{
  display: block;
  width: 100%;
  position: relative;
}

#sec02 .secondBlock > .img > a{
  display: block;
  width: 100%;
  margin-bottom: calc(45 * (100vw / 750));
}
#sec02 .secondBlock > .img a > figure img{display: block; width: 100%; height: auto;}


#sec02 .secondBlock > .img > figure{
  display: block;
  width: calc(440 * (100vw / 750));
  position: absolute;
  left: calc(-80 * (100vw / 750));
  bottom: calc(-60 * (100vw / 750));
  z-index: -2;
}

#sec02 .secondBlock .itemLinks{
}

#sec02 .secondBlock .itemLinks > ul{
  justify-content: flex-end;
  text-align: right;
}


/*******************************
sec03
*******************************/
#sec03{
  display: block;
  padding-top: calc(155 * (100vw / 750));
  padding-bottom: calc(58 * (100vw / 750));
  position: relative;
  z-index: 1;
}


#sec03 .setionTTL{
  display: block;
  width: 100%;
  margin-bottom: calc(80 * (100vw / 750));
  padding-bottom: calc(28.2 * (100vw / 750));
  border-bottom: 1px solid #d0b782;
  font-family: "ivyora-display", sans-serif;
  font-weight: 400;
  font-size: calc(120 * (100vw / 750));
  letter-spacing: 0.025em;
  color: #d0b782;
  line-height: 0.6;
  text-align: center;
  position: relative;
  z-index: 1;
}

#sec03 .setionTTL > img{
  display: block;
  width: calc(252 * (100vw / 750));
  height: auto;
  position: absolute;
  right: calc(50% - (252 + 69) * (100vw / 750));
  top: calc(-210 * (100vw / 750));
  z-index: -1;
}

#sec03 .firstBlock{
  display: block;
  width: calc(660 * (100vw / 750));
  margin: 0 auto;
}

#sec03 .firstBlock > .img{display: block;}
#sec03 .firstBlock > .img > a,
#sec03 .firstBlock > .img figure,
#sec03 .firstBlock > .img img{display: block; width: 100%; height: auto;}

#sec03 .firstBlock > .img figure{
  border-radius: 0 calc(150 * (100vw / 750)) 0 0;
  overflow: hidden;
}

#sec03 .firstBlock > .text{
  display: block;
  width: 100%;
  margin-top: calc(100 * (100vw / 750));
}

#sec03 .firstBlock > .text > p{
  display: block;
  padding-left: calc(20 * (100vw / 750));
  text-align: left;
  font-family: YuMincho, "Yu Mincho", "serif";
  font-size: calc(32 * (100vw / 750));
  font-weight: 800;
  font-feature-settings: "palt";
  letter-spacing: 0.075em;
  line-height: 1.89669375;
  margin-top: calc((-1em * 1.89669375 + 1em) / 2);
  margin-bottom: calc((-1em * 1.89669375 + 1em) / 2);
  white-space: nowrap;
}

#sec03 .firstBlock > .text > p > span{
  display: block;
  font-weight: 800;
  padding-left: calc(240 * (100vw / 750));
  margin-top: calc(11 * (100vw / 750));
}


#sec03 .secondBlock{
  display: block;
  width: 100%;
  padding-top: calc(200 * (100vw / 750));
  position: relative;
  z-index: 1;
}

#sec03 .secondBlock > .img{
  display: block;
  width: calc(630 * (100vw / 750));
  margin: 0 auto 0 0;
  padding-left: calc(90 * (100vw / 750));
  position: relative;
}

#sec03 .secondBlock > .img > a{
  display: block;
  width: 100%;
  margin-bottom: calc(42 * (100vw / 750));
}
#sec03 .secondBlock > .img a > figure img{display: block; width: 100%; height: auto;}

#sec03 .secondBlock > .img > figure{
  display: block;
  width: calc(440 * (100vw / 750));
  position: absolute;
  left: 0;
  top: calc(-100 * (100vw / 750));
  z-index: -2;
}

#sec03 .secondBlock .itemLinks{text-align: left;}

#sec03 .secondBlock .itemLinks > ul{
  justify-content: flex-start;
  text-align: left;
}


/*******************************
overRide
*******************************/
.celford231226 .pcView{display: none;}











