@charset "UTF-8";
html,
body {
  width: 100%;
  margin: 0 auto;
}

body {
  overflow-x: hidden;
  background-color: #ffffff;
}

img {
  width: 100%;
  height: auto;
  display: block;
  border: 0;
}

a {
  display: block;
  text-decoration: none;
  transition: all 0.4s;
  color: #141416;
}
@media screen and (min-width: 769px) {
  a:hover {
    opacity: 0.6;
    transition: all 0.4s;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/*---------------- indention ----------------*/
@media screen and (min-width: 768px) {
  .pcline-break {
    display: block;
  }
  .spline-break {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .pcline-break {
    display: none;
  }
  .spline-break {
    display: block;
  }
}

/* ---------------------------------------------------------
	hero img
----------------------------------------------------------*/
.hero__staticimg {
  padding: 0;
  width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0px;
  margin-bottom: 0px;
  position: relative;
}
.hero__staticimg img {
  max-width: 100%;
  height: auto;
}

/*---------------- TB ----------------*/
@media screen and (min-width: 768px) and (max-width: 959px) {
  .hero__staticimg {
    width: 100%;
    max-width: 1500px;
    height: auto;
    margin-top: 0px;
    margin-bottom: 0px;
  }
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  .hero__staticimg {
    width: 100%;
    height: auto;
    margin-top: 0px;
    margin-bottom: 0px;
  }
}

/* ---------------------------------------------------------
	item wapper
----------------------------------------------------------*/
.item-wapper {
  width: 100%;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 210px;
  position: relative;
}
.item-wapper img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.item-wapper-mid {
  width: 100%;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 120px;
  position: relative;
}
.item-wapper-mid img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.item-wapper-small {
  width: 100%;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 90px;
  position: relative;
}
.item-wapper-small img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.item-wapper-tiny {
  width: 100%;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 60px;
  position: relative;
}
.item-wapper-tiny img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.item-wapper-topinfo {
  width: 100%;
  z-index: 1;
  padding: 90px 0;
  position: relative;
}
.item-wapper-topinfo::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
  background-image: url("../images/info_bg_img.jpg");
  background-position: center;
  background-size: cover;
  z-index: -1;
}
.item-wapper-topinfo img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 768px) {
  .item-wapper {
    max-width: 800px;
    margin-bottom: 310px;
  }
  .item-wapper-mid {
    max-width: 800px;
    margin-bottom: 210px;
  }
  .item-wapper-small {
    max-width: 800px;
    margin-bottom: 120px;
  }
  .item-wapper-tiny {
    max-width: 800px;
    margin-bottom: 90px;
  }
}

/* ---------------------------------------------------------
	margin bottom
----------------------------------------------------------*/
.spmb_10 {
  margin-bottom: 10px;
}
.spmb_30 {
  margin-bottom: 30px;
}
.spmb_45 {
  margin-bottom: 45px;
}
.spmb_60 {
  margin-bottom: 60px;
}
.spmb_90 {
  margin-bottom: 90px;
}
.spmb_120 {
  margin-bottom: 120px;
}
.spmb_150 {
  margin-bottom: 150px;
}
.spmb_180 {
  margin-bottom: 180px;
}
.spmb_210 {
  margin-bottom: 210px;
}
.spmb_240 {
  margin-bottom: 240px;
}

.mb10 {
  margin-bottom: 10px;
}
.mb15 {
  margin-bottom: 15px;
}
.mb30 {
  margin-bottom: 30px;
}
.mb60 {
  margin-bottom: 60px;
}
.mb90 {
  margin-bottom: 90px;
}

.spmt_30 {
  margin-top: 30px;
}

.sppt_60 {
  padding-top: 50px;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  .spmb_30 {
    margin-bottom: 60px;
  }
  .spmb_45 {
    margin-bottom: 75px;
  }
  .spmb_60 {
    margin-bottom: 150px;
  }
  .spmb_90 {
    margin-bottom: 120px;
  }
  .spmb_120 {
    margin-bottom: 150px;
  }
  .spmb_150 {
    margin-bottom: 180px;
  }
  .spmb_180 {
    margin-bottom: 240px;
  }
  .sppt_60 {
    padding-top: 80px;
  }
}

/* ---------------------------------------------------------
	relative box
----------------------------------------------------------*/
.inner_wide__area {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.inner_large__area {
  width: 92.3%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.inner_mid__area {
  width: 84.6%;
  margin-left: auto;
  margin-right: auto;
}

.inner_reg__area {
  width: 61.5%;
  margin-left: auto;
  margin-right: auto;
}

.inner_rside__bx {
  width: 76.9%;
  margin-left: auto;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  .inner_large__area {
    width: 100%;
    padding-top: 120px;
  }
}

/* ---------------------------------------------------------
	static img
----------------------------------------------------------*/
.static_wide__box {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.static_large__box {
  width: 92.3%;
  margin-left: auto;
  margin-right: auto;
}

.static_medium__box {
  width: 76.9%;
  margin-left: auto;
  margin-right: auto;
}

.static_reg__box {
  width: 61.5%;
  margin-left: auto;
  margin-right: auto;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
}

/* ---------------------------------------------------------
	flex layout
----------------------------------------------------------*/
.flex_scbw_widebx {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.flex_scbw_largebx {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 10px;
  width: 92.3%;
  margin-left: auto;
  margin-right: auto;
}
.flex_scbw_midbx {
  display: flex;
  justify-content: space-between;
  width: 84.6%;
  margin-left: auto;
  margin-right: auto;
}

.twocolimg_half {
  width: 50%;
  background-color: #ffffff;
  z-index: 20;
}
.twocolimg__spc {
  width: 49%;
}
.threecol_spc_img {
  width: calc(100% / 3 - 6.5px);
}

.twofxbx__large {
  width: calc(53.8% - 10px);
}
.twofxbx__small {
  width: calc(46.2% - 10px);
  align-self: center;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
}

/* ---------------------------------------------------------
	grid layout
----------------------------------------------------------*/
.twocol_leftup__grdbx {
  display: grid;
  grid-template-columns: calc(61.5% - 5px) calc(38.5% - 5px);
  grid-template-rows: auto;
  grid-column-gap: 10px;
  grid-row-gap: 20px;
}

.twocol_rightup__grdbx {
  display: grid;
  grid-template-columns: calc(46.2% - 5px) calc(53.8% - 5px);
  grid-template-rows: auto;
  grid-column-gap: 10px;
  grid-row-gap: 20px;
}

.twoimg_ov__grdbx {
  display: grid;
  grid-template-columns: 26.9% 26.9% 30.8% 15.4%;
  grid-template-rows: auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.tcol_hlf_rup__grdbx {
  display: grid;
  grid-template-columns: calc(50% - 5px) calc(50% - 5px);
  grid-template-rows: auto;
  grid-column-gap: 10px;
  grid-row-gap: 0px;
}

.tcollsideup__upper {
  grid-area: 1 / 1 / 3 / 2;
  align-self: start;
}
.tcolrsidedown__lower {
  grid-area: 2 / 2 / 4 / 3;
  align-self: end;
}
.tcolleftside__prc {
  grid-area: 3 / 1 / 4 / 2;
  align-self: end;
  white-space: nowrap;
}

.tcolrsideup__upper {
  grid-area: 1 / 2 / 3 / 3;
  align-self: start;
}
.tcollsidedown__lower {
  grid-area: 2 / 1 / 4 / 2;
  align-self: end;
}
.tcolrightside__prc {
  grid-area: 3 / 2 / 4 / 3;
  align-self: end;
  white-space: nowrap;
}

.twoimg_ov__left {
  grid-area: 1 / 1 / 3 / 4;
  align-self: start;
}
.twoimg_ov__right {
  grid-area: 2 / 3 / 5 / 5;
  align-self: end;
}
.twoimg_ov__prc {
  grid-area: 4 / 1 / 5 / 3;
  align-self: end;
  padding-left: 1em;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  .threeovl_lup__gdbx {
    grid-template-rows: 200px 400px 100px auto;
  }
  .twocol_rup_spc__gdbx {
    grid-template-columns: calc(46.2% - 10px) calc(53.8% - 10px);
    grid-column-gap: 10px;
  }
  .twocol_llrg_spc__prc {
    padding-left: 0em;
  }
  .twocol_rup_spc__prc {
    padding-right: 0em;
  }
  .twocol_vertimg__prc {
    padding-left: 0em;
  }
  .threeimg_rnd__prc {
    padding-left: 0em;
  }
  .leftoblong_twocol__gdbx::after {
    position: absolute;
    content: "";
    display: inline-block;
    background-image: url("https://niceclaup.itembox.design/item/event/2025/FluffyRomance/images/sec02_beginbg.jpg?d=20250606141142");
    background-size: contain;
    background-repeat: no-repeat;
    width: 100vw;
    height: 2600px;
    margin: 0 calc(50% - 50vw);
    top: 50px;
    z-index: 1;
  }
  .twocol_rup_hlf__gdbx::after {
    content: "";
    width: 84.6%;
    height: 950px;
    display: inline-block;
    border: 1px solid #140d24;
    position: absolute;
    top: 50px;
    left: 7.7%;
    z-index: -1;
  }
}

/* ---------------------------------------------------------
	info(top)
----------------------------------------------------------*/
.top_info__box {
  display: none;
  width: 92.3%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
/* .top_info__box::after {
	content: "";
	width: 30.7%;
	position: absolute;
	left: 34.65%;
	top: -30%;
	border-top: 1px solid #dedbdb;
	z-index: 1;
	pointer-events: none;
} */
.top_info__box::before {
  content: "";
  width: 30.7%;
  position: absolute;
  left: 34.65%;
  bottom: -30%;
  border-top: 1px solid #bfbfbf;
  z-index: 1;
  pointer-events: none;
}

.top_info__txt {
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 1em;
  color: #727272;
}

.top_info__txt li {
  font-size: clamp(
    0.8125rem,
    calc(0.690625rem + 0.6093749999999998vw),
    1.05625rem
  );
  font-family: "ivyora-display", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  /* font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal; */
}

.top_info__txt li:nth-child(1) {
  font-size: clamp(
    1.373125rem,
    calc(1.16715625rem + 1.0298437500000002vw),
    1.7850625rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.17em;
}

.top_info__txt li:nth-child(2) {
  font-size: clamp(
    1.7850625rem,
    calc(1.517303125rem + 1.338796875vw),
    2.32058125rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  padding-bottom: 0.5em;
}

.top_info__txt li:nth-child(5) {
  font-size: clamp(
    1.7850625rem,
    calc(1.517303125rem + 1.338796875vw),
    2.32058125rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  padding-top: 1em;
  text-align: center;
}

.infomore_date {
  font-size: clamp(
    0.8125rem,
    calc(0.690625rem + 0.6093749999999998vw),
    1.05625rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
}

/* ---------------------------------------------------------
	info(under)
----------------------------------------------------------*/
.under_info__box {
  width: 92.3%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: 1em 2em; /* top,bottom 追加*/
}
.under_info__box::after {
  content: "";
  width: 100%;
  height: 130%;
  position: absolute;
  left: 0%;
  top: -15%;
  /* border: 1px solid #272016; */
  background-color: #f9f7f4;
  border-radius: 15px;
  z-index: 5;
  pointer-events: none;
}

.under_info__txt {
  list-style: none;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 1em;
  color: #272016;
}

.under_info__txt li {
  font-size: clamp(
    0.8125rem,
    calc(0.690625rem + 0.6093749999999998vw),
    1.05625rem
  );
  /* font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal; */
  font-family: "ivyora-display", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  z-index: 10;
}

.under_info__txt li:nth-child(1) {
  display: none;
  font-size: clamp(
    1.05625rem,
    calc(0.8978124999999999rem + 0.7921875vw),
    1.373125rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.15em;
}
.under_info__txt li:nth-child(2) {
  display: none;
  font-size: clamp(
    1.373125rem,
    calc(1.16715625rem + 1.0298437500000002vw),
    1.7850625rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.01em;
  padding-bottom: 1em;
}
.under_info__txt li:nth-child(3) {
  display: none;
  font-size: clamp(
    0.8125rem,
    calc(0.690625rem + 0.6093749999999998vw),
    1.05625rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.5em;
  width: min(100%, 500px);
  border: 1px solid #272016;
  border-radius: 50px;
  padding: 0.75em 0em;
  text-align: center;
}
.under_info__txt li:nth-child(4) {
  display: none;
}
.under_info__txt li:nth-child(5) {
  display: none;
  padding-bottom: 3em;
}
.under_info__txt li:nth-child(6) {
  font-size: clamp(
    0.8125rem,
    calc(0.690625rem + 0.6093749999999998vw),
    1.05625rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.5em;
  width: min(100%, 500px);
  border: 1px solid #272016;
  border-radius: 50px;
  padding: 0.75em 0em;
  text-align: center;
}
.under_info__txt li:nth-child(n + 8) {
  font-size: clamp(0.625rem, calc(0.53125rem + 0.46875vw), 0.8125rem);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  font-feature-settings: "palt" 1;
}

.infotxt__szs {
  /* font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal; */
  font-family: "ivyora-display", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  font-size: 70%;
}

.infotxt__dark {
  color: #ef9ab9;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 130%;
}

.solidbg {
  display: inline-block;
  background-color: #f4bcd0;
  border-radius: 50px;
  color: #f9f7f4;
  padding: 0.25em 0.5em;
  font-size: clamp(
    0.625rem,
    calc(0.40937500000000004rem + 1.0781249999999998vw),
    1.05625rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}

.solidbgfff {
  display: inline-block;
  background-color: #f4bcd0;
  border-radius: 50px;
  color: #ffffff;
  padding: 0.25em 0.25em;
  font-size: clamp(
    0.625rem,
    calc(0.40937500000000004rem + 1.0781249999999998vw),
    1.05625rem
  );
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.3em;
  text-indent: 0.3em;
}

.txt__en {
  font-family: "ivyora-display", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-indent: 0.08em;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  .under_info__txt {
    row-gap: 1.5em;
  }
}

/* ---------------------------------------------------------
	ribbon
----------------------------------------------------------*/
.ribbon_deco__01-1 {
  width: 46.2%;
  position: absolute;
  top: -1.5%;
  left: -4%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__01-2 {
  width: 15.4%;
  position: absolute;
  top: 32%;
  right: -1%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__01-3 {
  width: 12.4%;
  position: absolute;
  top: 60%;
  left: 0%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}

.ribbon_deco__02-1 {
  width: 23%;
  position: absolute;
  top: 25%;
  right: 4.8%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__02-2 {
  width: 30.8%;
  position: absolute;
  bottom: -3.5%;
  right: 1.8%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}

.ribbon_deco__03-1 {
  width: 23%;
  position: absolute;
  top: -10%;
  left: 1.6%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__03-2 {
  width: 30.8%;
  position: absolute;
  top: 42%;
  right: 7.7%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__03-3 {
  width: 23%;
  position: absolute;
  top: 36%;
  left: 12.4%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}

.ribbon_deco__04-1 {
  width: 23%;
  position: absolute;
  top: 65.5%;
  right: 3%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__04-2 {
  width: 15.4%;
  margin-left: auto;
  margin-right: auto;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__04-3 {
  width: 23%;
  position: absolute;
  top: -10%;
  right: 1.8%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}
.ribbon_deco__04-4 {
  width: 15.4%;
  position: absolute;
  top: 18%;
  left: 7.7%;
  z-index: 10;
  pointer-events: none;
  overflow-x: hidden;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  .ribbon_deco__01-1 {
    top: 80px;
    left: -40px;
  }
  .ribbon_deco__01-2 {
    top: 950px;
    right: -10px;
  }
  .ribbon_deco__01-3 {
    top: 1600px;
    left: 0%;
  }
  .ribbon_deco__02-1 {
    top: 730px;
    right: 50px;
  }
  .ribbon_deco__02-2 {
    bottom: -200px;
    right: 0px;
  }
  .ribbon_deco__03-1 {
    top: -170px;
    left: -30px;
  }
  .ribbon_deco__03-2 {
    top: 1350px;
    right: -20px;
  }
  .ribbon_deco__03-3 {
    width: 15.4%;
    top: 1350px;
    left: 50px;
  }
  .ribbon_deco__04-1 {
    width: 150px;
    top: 1691px;
    right: 12px;
  }
  .ribbon_deco__04-3 {
    top: -60px;
    right: -50px;
  }
  .ribbon_deco__04-4 {
    top: 630px;
    left: 50px;
  }
}

/* ---------------------------------------------------------
	subheading
----------------------------------------------------------*/
.subheading__topinfo {
  width: 46.2%;
  margin-left: auto;
  margin-right: auto;
  z-index: 10;
  pointer-events: none;
}

.subheading__contents {
  width: 61.5%;
  margin-left: auto;
  margin-right: auto;
  z-index: 10;
  pointer-events: none;
}

.subheading__01-1 {
  width: 30.8%;
  position: absolute;
  top: 0%;
  right: 3.8%;
  z-index: 10;
  pointer-events: none;
}
.subheading__01-2 {
  width: 30.8%;
  position: absolute;
  top: 41%;
  left: -1.6%;
  z-index: 10;
  pointer-events: none;
}

.subheading__02-1 {
  width: 61.5%;
  margin-left: auto;
  margin-right: auto;
  z-index: 10;
  pointer-events: none;
}
.subheading__02-2 {
  width: 23%;
  position: absolute;
  top: 46%;
  left: 3.8%;
  z-index: 10;
  pointer-events: none;
}

.subheading__03-1 {
  width: 46.2%;
  position: absolute;
  top: -3%;
  right: 1.6%;
  z-index: 10;
  pointer-events: none;
}
.subheading__03-2 {
  width: 3.2%;
  position: absolute;
  top: 27%;
  left: 3.8%;
  z-index: 10;
  pointer-events: none;
}

.subheading__04-1 {
  width: 46.2%;
  position: absolute;
  top: -4%;
  left: 1.6%;
  z-index: 10;
  pointer-events: none;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  .subheading__01-1 {
    top: 120px;
  }
  .subheading__01-2 {
    top: 1100px;
    left: -20px;
  }
  .subheading__02-1 {
    top: 120px;
    left: 0%;
  }
  .subheading__02-2 {
    top: 1350px;
    left: 30px;
  }
  .subheading__03-1 {
    top: 40px;
    right: -20px;
  }
  .subheading__03-2 {
    top: 900px;
    left: 0;
  }
  .subheading__04-1 {
    top: 40px;
    left: -20px;
  }
}

/* ---------------------------------------------------------
	swiper
----------------------------------------------------------*/
.swiper {
  width: 100%;
  height: auto;
}
.swiper img {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.loopslides .swiper-wrapper {
  transition-timing-function: linear !important;
}
.loopslides .swiper-wrapper .swiper-slide {
  width: 100%;
  height: auto;
  overflow: hidden;
}

/* ---------------------------------------------------------
	swing
----------------------------------------------------------*/
.swingLR {
  animation: swingLR 3s infinite;
  transform: rotate(20deg);
}

@keyframes swingLR {
  0% {
    transform: rotate(20deg);
  }
  50% {
    transform: rotate(-20deg);
  }

  100% {
    transform: rotate(20deg);
  }
}

/* ---------------------------------------------------------
	price box
----------------------------------------------------------*/
.center_wideprc__bx {
  width: min(100%, 400px);
  margin-left: auto;
  margin-right: auto;
}

.center_largeprc__bx {
  width: min(84.6%, 400px);
  margin-left: auto;
  margin-right: auto;
}

.right_largeprc__bx {
  width: min(84.6%, 800px);
  margin-left: auto;
  margin-right: auto;
}

/* ---------------------------------------------------------
	items center
----------------------------------------------------------*/
.items_price_center {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.items_price_center li {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  line-height: 1;
  letter-spacing: 0.05em;
  color: #272016;
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
}

.items_price_center li:nth-child(even) {
  padding-left: 1em;
}

.items_price_center li:nth-child(n + 3) {
  padding-top: 1em;
}

.items_price_center a {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  color: #272016;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-decoration-color: #272016;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25ex;
  text-decoration-skip-ink: none;
  white-space: nowrap;
}

/* ---------------------------------------------------------
	items center vertical
----------------------------------------------------------*/
.items_price_center_vertical {
  list-style: none;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
}
.items_price_center_vertical li {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  line-height: 1;
  letter-spacing: 0.05em;
  color: #272016;
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
}

.items_price_center_vertical li:not(:first-child) {
  padding-top: 1em;
}

.items_price_center_vertical a {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  color: #272016;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-decoration-color: #272016;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25ex;
  text-decoration-skip-ink: none;
  white-space: nowrap;
}

/* ---------------------------------------------------------
	list right
----------------------------------------------------------*/
.items_price_right {
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.items_price_right li {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  line-height: 1;
  letter-spacing: 0.05em;
  color: #272016;
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
}
.items_price_right li:not(:first-child) {
  padding-top: 1em;
}

.items_price_right a {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  color: #272016;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-decoration-color: #272016;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25ex;
  text-decoration-skip-ink: none;
  white-space: nowrap;
}

/* ---------------------------------------------------------
	list left
----------------------------------------------------------*/
.items_price_left {
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.items_price_left li {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  line-height: 1;
  letter-spacing: 0.05em;
  color: #272016;
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
}
.items_price_left li:not(:first-child) {
  padding-top: 1em;
}

.items_price_left a {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  color: #272016;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-decoration-color: #272016;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25ex;
  text-decoration-skip-ink: none;
  white-space: nowrap;
}

/* ---------------------------------------------------------
	list left
----------------------------------------------------------*/
.items_price_left__row {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.items_price_left__row li {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  line-height: 1;
  letter-spacing: 0.05em;
  color: #272016;
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
}
.items_price_left__row li:nth-child(even) {
  padding-left: 1em;
}

.items_price_left__row a {
  /* font-size: clamp( 0.9375rem, calc( 0.796875rem + 0.703125vw ), 1.21875rem ); */
  font-size: clamp(
    0.8125rem,
    calc(0.5321875rem + 1.4015624999999998vw),
    1.373125rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  color: #272016;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-decoration-color: #272016;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25ex;
  text-decoration-skip-ink: none;
  white-space: nowrap;
}

/* ---------------------------------------------------------
	yen
----------------------------------------------------------*/
.price_yen {
  font-size: clamp(0.75rem, calc(0.6375rem + 0.5625vw), 0.975rem);
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  color: #272016;
  font-feature-settings: "palt" 1;
}

.line_br {
  width: 100%;
}

/* ---------------------------------------------------------
	item btn
----------------------------------------------------------*/
.itembtn_wapper {
  text-align: center;
  width: 92.3%;
  margin-left: auto;
  margin-right: auto;
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
}

.itemlk {
  display: inline-block;
  width: 100%;
  padding: 1.5em 0;
  margin: 0 auto;
  border: 1px #272016 solid;
  border-radius: 100px;
  transition: all 0.3s ease-out;
  font-size: clamp(
    0.96875rem,
    calc(0.63453125rem + 1.6710937500000003vw),
    1.6371875rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.3em;
  text-indent: 0.3em;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}

.itembtn_wapper a {
  font-size: clamp(
    0.96875rem,
    calc(0.63453125rem + 1.6710937500000003vw),
    1.6371875rem
  );
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.3em;
  text-indent: 0.3em;
  color: #272016;
  text-decoration: none;
}
.itembtn_wapper span {
  font-size: 85%;
  font-family: "linotype-didot", serif;
  font-weight: 400;
  font-style: normal;
  color: #272016;
}

/* --------------- PC --------------- */
@media screen and (min-width: 768px) {
  .itemlk {
    width: 100%;
  }
}

/* ---------------------------------------------------------
	footer
----------------------------------------------------------*/
footer {
  background-image: url("../images/footer_bg_img.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 auto;
  padding: 60px 0 30px;
  width: 100%;
  max-width: 9999px;
  z-index: 10;
  color: #272016;
}
footer #footer__box {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 20px 0 20px;
}
footer #niceclaup_logo {
  width: 25%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1em;
}
footer .footer__p {
  display: block;
  text-align: center;
  color: #272016;
  font-size: clamp(
    1.5625rem,
    calc(1.0796875rem + 2.4140625000000004vw),
    2.528125rem
  );
  font-family: "linotype-didot", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-indent: 0.15em;
  line-height: 1.5;
}
footer .footer__pwht {
  display: block;
  text-align: center;
  color: #272016;
  font-size: clamp(
    1.5625rem,
    calc(1.0796875rem + 2.4140625000000004vw),
    2.528125rem
  );
  font-family: "linotype-didot", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-indent: 0.15em;
  line-height: 1.5;
}
footer .footer__txtlink {
  display: block;
  padding: 1em 0 4em;
  text-align: center;
}
footer .footer__txtlink a {
  text-align: center;
  font-family: "ivyora-display", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.15em;
  text-indent: 0.15em;
  font-size: clamp(1rem, calc(0.691rem + 1.5450000000000002vw), 1.618rem);
  line-height: 1;
  color: #272016;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.3ex;
  text-decoration-skip-ink: none;
}
footer .footer_r {
  display: block;
  text-align: center;
  color: #272016;
  font-size: clamp(0.625rem, calc(0.431875rem + 0.965625vw), 1.01125rem);
  padding-top: 1em;
  line-height: 1;
  font-family: "linotype-didot", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  font-feature-settings: "palt" 1;
}
footer #sns__area {
  list-style: none;
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 15px;
}
footer #sns__area li {
  width: calc(100% / 4 - 35px);
}

/*---------------- TB ----------------*/
@media screen and (min-width: 768px) and (max-width: 959px) {
  footer #niceclaup_logo {
    width: 15%;
  }
  footer #sns__area {
    width: 40%;
    column-gap: 15px;
  }
  footer #sns__area li {
    width: calc(100% / 4 - 45px);
  }
}

/*---------------- PC ----------------*/
@media screen and (min-width: 960px) {
  footer {
    background-image: url("../images/footer_pcbg_img.jpg");
    padding: 90px 0 30px;
  }
  footer #niceclaup_logo {
    width: 130px;
  }
  footer #sns__area {
    width: 500px;
    max-width: 100%;
    column-gap: 110px;
  }
  footer #sns__area li {
    width: calc((100% / 4 - 440px) 960 * 100vw);
  }
}
