@charset "UTF-8";
*,
*::before,
*::after{
  box-sizing:border-box;
}
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
main,
header,
section,
article,
aside,
footer,
dl,
dd,
ul,
ol,
li{
  margin:0;
  padding:0;
}

h1, h2, h3, h4, h5, h6{
  font-size:100%;
}
ul,
ol,
li{
  list-style:none;
}
img,
picture{
  max-width:100%;
  height:auto;
  display:block;
  border:none;
}
button{
  margin:0;
  padding:0;
  border:none;
  background:none;
}
a{
  text-decoration:none;
}
input,
button,
textarea,
select{
  font:inherit;
}

@media (prefers-reduced-motion: reduce){
  html:focus-within{
    scroll-behavior:auto;
  }
  *,
  *::before,
  *::after{
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
    scroll-behavior:auto !important;
  }
}
@font-face{
  font-family:"Noto Sans JP";
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url("./noto-sans-jp-japanese-400-normal-5Rl_hPwz.woff2") format("woff2");
}
@font-face{
  font-family:"Noto Sans JP";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("./noto-sans-jp-japanese-700-normal-CEygud0I.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Zen Old Mincho";
  font-style:normal;
  font-weight:400;
  src:url("./zen-old-mincho-v13-japanese-regular-Cj_aSdxq.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Zen Old Mincho";
  font-style:normal;
  font-weight:700;
  src:url("./zen-old-mincho-v13-japanese-700-C5wFKpCr.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Roboto";
  font-style:normal;
  font-weight:100;
  src:url("./roboto-v51-latin-100-BfQPpQFA.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Roboto";
  font-style:normal;
  font-weight:300;
  src:url("./roboto-v51-latin-300-C1w_mF0t.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Roboto";
  font-style:italic;
  font-weight:300;
  src:url("./roboto-v51-latin-300italic-CAa1KlKI.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Roboto";
  font-style:normal;
  font-weight:500;
  src:url("./roboto-v51-latin-500-BjyWYPzD.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Roboto";
  font-style:italic;
  font-weight:500;
  src:url("./roboto-v51-latin-500italic-D3AbOkpi.woff2") format("woff2");
}
@font-face{
  font-display:swap;
  font-family:"Roboto";
  font-style:normal;
  font-weight:700;
  src:url("./roboto-v51-latin-700-B2uBgL7a.woff2") format("woff2");
}
.header{
  width:100%;
  padding:12px 16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-shrink:0;
  position:fixed;
  top:0;
  z-index:100;
  background-color:#FFFFFF;
}
@media screen and (min-width: 1024px){
  .header{
    padding:0;
    top:-100%;
    left:auto;
    justify-content:center;
    background:rgba(255, 255, 255, 0.8);
  }
}
.header{
  transition:top 1s ease-in-out;
}
.header.is-view{
  top:0;
}
.header.is-resizing{
  transition:none !important;
}
.header-logo{
  width:auto;
  height:auto;
}
@media screen and (min-width: 1024px){
  .header-logo{
    display:none;
  }
}

.header-link{
  width:auto;
  height:auto;
  transition:opacity 0.3s;
}
@media (hover: hover){
  .header-link:hover{
    opacity:0.6;
  }
}
.header-nav__container{
  width:100%;
  height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:32px;
  position:fixed;
  top:64px;
  left:100%;
  transition:left 0.2s ease-in-out;
  z-index:1;
}
.header-nav__container.is-open{
  left:0;
}
.header-nav__container::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:-1;
  background:linear-gradient(0deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.5) 100%), url("../img/kv/kv-main.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center;
}
@media screen and (min-width: 1024px){
  .header-nav__container{
    position:static;
    height:46px;
    flex-direction:row;
    align-items:center;
    gap:40px;
  }
  .header-nav__container::before{
    display:none;
  }
}
.header-nav__list{
  width:100%;
  background:rgba(255, 255, 255, 0.8);
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
@media screen and (min-width: 1024px){
  .header-nav__list{
    width:auto;
    flex-direction:row;
    align-items:center;
    gap:40px;
    background-color:transparent;
  }
}

.header-nav__item{
  width:auto;
  height:auto;
}
.header-nav__item:first-of-type .header-nav__link{
  border-top:1px solid #666666;
}
@media screen and (min-width: 1024px){
  .header-nav__item:first-of-type .header-nav__link{
    border-top:none;
  }
}
.header-nav__link{
  width:100%;
  padding:0 16px;
  height:68px;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:start;
  gap:16px;
  border-bottom:1px solid #666666;
  transition:background-color 0.3s, color 0.3s, opacity 0.3s;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:1px;
}
.header-nav__link::before{
  display:block;
  content:"";
  width:8px;
  height:8px;
  aspect-ratio:1/1;
  background-color:#666666;
  border-radius:50%;
}
.header-nav__link:active{
  background-color:#666666;
  color:#FFFFFF;
}
.header-nav__link:active::before{
  background-color:#FFFFFF;
}
@media screen and (min-width: 1024px){
  .header-nav__link{
    padding:0;
    border-bottom:none;
    height:auto;
    font-size:14px;
    font-weight:400;
    letter-spacing:0.7px;
  }
  .header-nav__link:active{
    background-color:transparent;
    color:#333333;
  }
  .header-nav__link{
    position:relative;
  }
  .header-nav__link::before{
    display:block;
    width:100%;
    height:1px;
    background-color:#333333;
    border-radius:0;
    position:absolute;
    left:0;
    bottom:-6px;
    transform:scale(0, 1);
    transform-origin:right top;
    transition:transform 0.6s;
  }
}
@media screen and (min-width: 1024px) and (hover: hover){
  .header-nav__link:hover::before{
    transform:scale(1, 1);
    transform-origin:left top;
  }
}

.header-nav__link-inner{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.header-nav__link-inner .header-nav__text{
  line-height:150%;
}
@media screen and (min-width: 1024px){
  .header-nav__link-inner{
    flex-direction:row;
    align-items:center;
  }
  .header-nav__link-inner .header-nav__text{
    line-height:100%;
  }
}

.header-nav__text-small{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.7px;
}
@media screen and (min-width: 1024px){
  .header-nav__text-small{
    line-height:100%;
  }
}
.humberger{
  width:40px;
  height:40px;
  padding:0;
  background-color:transparent;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
}
@media screen and (min-width: 1024px){
  .humberger{
    display:none;
  }
}
.humberger__line{
  width:28px;
  height:2px;
  background-color:#333333;
  transition:transform 0.2s, opacity 0.2s, visibility 0.2s;
  position:relative;
  z-index:10;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
}
.humberger.is-open .humberger__line:nth-of-type(1){
  transform:translateY(10px) rotate(45deg);
}
.humberger.is-open .humberger__line:nth-of-type(3){
  transform:translateY(-10px) rotate(-45deg);
}
.humberger.is-open .humberger__line:nth-of-type(2){
  visibility:hidden;
  opacity:0;
}

@media screen and (min-width: 1024px){
  .header-nav__cta.btn-search{
    padding:12px 16px;
    width:157px;
    height:38px;
    gap:8px;
  }
  .header-nav__cta.btn-search .btn-search__text{
    font-size:14px;
    font-style:normal;
    font-weight:400;
    line-height:100%;
    letter-spacing:0.7px;
  }
}
.body{
  width:100%;
  height:100%;
  font-family:"Noto Sans JP", sans-serif;
  position:relative;
  overflow-x:hidden;
  z-index:0;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.main{
  width:100%;
  height:100%;
  overflow-x:hidden;
  padding-top:64px;
}
@media screen and (min-width: 1024px){
  .main{
    padding:0;
  }
}
.kv{
  width:100%;
  position:relative;
  z-index:7;
  overflow:hidden;
}
@media screen and (min-width: 1024px){
  .kv{
    display:flex;
    align-items:stretch;
  }
}
.section{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  position:relative;
}
.section__inner{
  width:100%;
  max-width:1140px;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:40px 4.266666667%;
}
@media screen and (min-width: 1440px){
  .section__inner{
    padding:88px 0;
  }
}
.section__inner{
}
.section__inner.benefits{
  background-color:#FFFFFF;
  gap:40px;
}
@media screen and (min-width: 1440px){
  .section__inner.benefits{
    max-width:none;
    gap:64px;
  }
}
.section__inner.contract{
  padding:48px 4.266666667% 32px;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .section__inner.contract{
    padding:96px 4.266666667% 72px;
  }
}
@media screen and (min-width: 1280px){
  .section__inner.contract{
    padding:96px 0 72px 0;
  }
}
.section__inner.search{
  padding:40px 4.266666667%;
  gap:24px;
}
@media screen and (min-width: 768px){
  .section__inner.search{
    padding:88px 4.266666667%;
    gap:48px;
  }
}
@media screen and (min-width: 1280px){
  .section__inner.search{
    padding:88px 0;
  }
}
.section__inner.youtube{
  padding:40px 4.266666667%;
  gap:16px;
}
@media screen and (min-width: 768px){
  .section__inner.youtube{
    padding:88px 4.266666667%;
    gap:24px;
  }
}
@media screen and (min-width: 1280px){
  .section__inner.youtube{
    padding:88px 0;
  }
}
.section__inner.merit{
  padding:40px 0;
}
@media screen and (min-width: 768px){
  .section__inner.merit{
    padding:80px 4.266666667%;
    gap:48px;
  }
}
@media screen and (min-width: 1280px){
  .section__inner.merit{
    padding:80px 0;
  }
}
.section__inner.products{
  padding:40px 0 72px;
  gap:24px;
  max-width:none;
}
@media screen and (min-width: 1024px){
  .section__inner.products{
    padding:64px 0 88px;
  }
}

.benefits__inner{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:40px;
}
@media screen and (min-width: 1440px){
  .benefits__inner{
    justify-content:center;
    align-items:stretch;
    display:grid;
    grid-template-columns:minmax(0, 461px) minmax(0, 803px);
    grid-template-rows:auto auto auto;
    column-gap:48px;
    row-gap:24px;
    padding-left:clamp(64px, 3.33vw + 16px, 80px);
    padding-right:clamp(64px, 3.33vw + 16px, 80px);
  }
}
@media screen and (min-width: 1660px){
  .benefits__inner{
    grid-template-columns:minmax(0, 613px) minmax(0, 1067px);
    column-gap:80px;
  }
}

.bg-white{
  background-color:#FFFFFF;
}

.bg-gray{
  background-color:#F1F1F1;
}
.tablet__lineBreak{
  display:none;
}
@media screen and (min-width: 768px){
  .tablet__lineBreak{
    display:block;
  }
}
@media screen and (min-width: 1280px){
  .tablet__lineBreak{
    display:none;
  }
}

.sp__lineBreak{
  display:block;
}
@media screen and (min-width: 768px){
  .sp__lineBreak{
    display:none;
  }
}

.pc__lineBreak{
  display:none;
}
@media screen and (min-width: 1280px){
  .pc__lineBreak{
    display:block;
  }
}

.fontZen{
  font-family:"Zen Old Mincho", serif;
}

.fontRoboto{
  font-family:"Roboto", sans-serif;
}
.footer{
  width:100%;
  padding:80px 0;
}
@media screen and (min-width: 1024px){
  .footer{
    padding:104px 0;
  }
}
.footer__inner{
  width:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .footer__inner{
    gap:32px;
  }
}

.footer__row{
  display:contents;
}
@media screen and (min-width: 1024px){
  .footer__row{
    display:flex;
    align-items:center;
    gap:80px;
  }
}

.footer-logo__polus{
  width:159px;
  height:78px;
}
@media screen and (min-width: 1024px){
  .footer-logo__polus{
    width:135px;
    height:66px;
  }
}
.copyright{
  width:fit-content;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:10px;
  font-style:normal;
  font-weight:400;
  line-height:200%;
  letter-spacing:0.5px;
}
.section__cta{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
@media screen and (min-width: 1024px){
  .section__cta{
    gap:16px;
  }
}
.speech-balloon{
  position:relative;
  width:fit-content;
  padding-bottom:12px;
}

.speech-balloon__text{
  margin:0;
  padding:8px 12px;
  background-color:#F1F1F1;
  text-align:center;
  position:relative;
  z-index:2;
}
.speech-balloon__text::after{
  content:"";
  position:absolute;
  bottom:-12px;
  left:50%;
  transform:translateX(-50%);
  clip-path:polygon(0 0, 100% 0, 50% 100%);
  width:24px;
  height:12px;
  background-color:#F1F1F1;
  z-index:-1;
}

.speech-balloon__text__inner{
  color:#333333;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:140%;
  letter-spacing:0.8px;
}
.btn-search{
  width:227px;
  height:60px;
  display:flex;
  flex-direction:row-reverse;
  align-items:center;
  justify-content:center;
  gap:16px;
  background-color:#666666;
  border-radius:4px;
  box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.3);
  overflow:hidden;
  position:relative;
  z-index:1;
}
.btn-search::after{
  background-color:#9F9F9F;
  position:absolute;
  top:0;
  left:0;
  content:"";
  width:100%;
  height:100%;
  transform:scale(0, 1);
  transform-origin:left top;
  transition:0.2s cubic-bezier(0.45, 0, 0.55, 1);
  z-index:-1;
}
@media (hover: hover){
  .btn-search:hover::after{
    transform:scale(1, 1);
  }
  .btn-search:hover .icon-defalt{
    color:#FFFFFF;
  }
}

.btn-search__text{
  color:#FFFFFF;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.8px;
  transition:color 0.3s ease;
}
.btn-search__icon{
  width:14px;
  height:14px;
  color:#FFFFFF;
}
.btn-search__icon.icon-defalt{
  display:block;
}
.btn-search__icon.icon-hover{
  display:none;
}
.floating-button{
  width:343px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  position:fixed;
  bottom:-100%;
  left:50%;
  transform:translateX(-50%);
  z-index:11;
  color:#FFFFFF;
  border-radius:16px 16px 0 0;
  transition:bottom 0.6s, visibility 0.6s;
  visibility:hidden;
}
.floating-button.is-view{
  bottom:0;
  visibility:visible;
}
@media screen and (min-width: 1280px){
  .floating-button{
    width:343px;
    height:auto;
    padding:0;
    left:calc(50% + 570px);
    transform:translateX(-100%);
  }
}
@media (hover: hover){
  .floating-button:hover .floating-button__icon-circle{
    background-color:#736450;
    border:1px solid #FFFFFF;
  }
  .floating-button:hover .floating-button__icon-img-defalt{
    opacity:0;
    display:none;
  }
  .floating-button:hover .floating-button__icon-img-hover{
    display:block;
    opacity:1;
    color:#FFFFFF;
  }
}

.floating-button__header{
  width:100%;
  height:auto;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.floating-button__container{
  flex:1;
  display:flex;
  padding:11px 26px;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:8px;
  background-color:#FFFFFF;
  border-top:2px solid #736450;
  border-right:2px solid #736450;
  border-left:2px solid #736450;
  position:relative;
  z-index:1;
}
.floating-button__container::before{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:81px;
  height:80px;
  background:url("../img/background/bg-leaf-left.webp");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  z-index:-1;
}
.floating-button__container::after{
  content:"";
  position:absolute;
  right:-8px;
  top:-4px;
  width:81px;
  height:80px;
  background:url("../img/background/bg-leaf-right.webp");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  z-index:-1;
}

.floating-button__gift{
  display:flex;
  padding:4px 8px;
  justify-content:center;
  align-items:center;
  background-color:#736450;
}

.floating-button__gift-text{
  color:#FFFFFF;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:120%;
  letter-spacing:0.7px;
  white-space:nowrap;
}
.floating-button__text-container{
  width:auto;
  display:flex;
  align-items:center;
  gap:4px;
  color:#736450;
}

.floating-button__max-text{
  writing-mode:vertical-rl;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:110%;
}
.floating-button__text-inner{
  width:auto;
  display:flex;
  align-items:end;
  white-space:nowrap;
}

.floating-button__price{
  font-feature-settings:"halt" on;
  font-size:40px;
  font-style:italic;
  font-weight:300;
  line-height:100%;
}

.floating-button__text{
  font-feature-settings:"halt" on;
  font-size:16px;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.8px;
  padding-bottom:6px;
}

.floating-button__footer{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#736450;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.8px;
}

.floating-button__icon{
  background-color:#736450;
  padding:0 4px;
  display:flex;
  align-self:stretch;
  align-items:center;
  justify-content:center;
  border-top:2px solid #736450;
}

.floating-button__icon-circle{
  width:24px;
  height:24px;
  padding:4px 3px 4px 5px;
  background-color:#FFFFFF;
  border-radius:12px;
  display:flex;
  justify-content:center;
  align-items:center;
  align-self:center;
  aspect-ratio:1/1;
  transition:background-color 0.3s ease, border-color 0.3s ease;
}

.floating-button__icon-img-defalt{
  display:block;
  width:16px;
  height:auto;
  color:#736450;
  transition:opacity 0.3s ease;
}

.floating-button__icon-img-hover{
  display:none;
  width:16px;
  height:auto;
  color:#FFFFFF;
  opacity:0;
  transition:opacity 0.3s ease;
}
.search-more{
  width:227px;
  height:60px;
  padding:0 40px;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:16px;
  color:#333333;
  border-radius:4px;
  background:#FFFFFF;
  box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.3);
  cursor:pointer;
  transition:background-color 0.3s;
}
@media (hover: hover){
  .search-more:hover{
    background-color:#D4D4D4;
  }
}
.search-more__text{
  text-align:center;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.8px;
}
.page-top{
  width:40px;
  height:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  position:fixed;
  bottom:24px;
  right:4.266667%;
  z-index:10;
  cursor:pointer;
  transition:opacity 0.3s, bottom 0.3s;
  opacity:0;
  pointer-events:none;
}
.page-top.is-show{
  opacity:1;
  pointer-events:auto;
}
.page-top.is-stopped{
  transition:none;
}
@media (hover: hover){
  .page-top:hover{
    opacity:0.6;
  }
}
@media screen and (min-width: 1024px){
  .page-top{
    width:48px;
  }
}
.page-top__container{
  width:40px;
  height:40px;
  display:grid;
  place-content:center;
  background-color:rgba(0, 0, 0, 0.2);
  border-radius:24px;
}
@media screen and (min-width: 1024px){
  .page-top__container{
    width:48px;
    height:48px;
  }
}

.page-top__icon{
  color:#FFFFFF;
  width:27px;
  height:27px;
}
@media screen and (min-width: 1024px){
  .page-top__icon{
    width:32px;
    height:32px;
  }
}
.section-heading__title{
  color:#333333;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:140%;
  letter-spacing:1px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
@media screen and (min-width: 768px){
  .section-heading__title{
    font-size:24px;
    letter-spacing:1.2px;
    gap:12px;
  }
}
.section-heading__title:before{
  content:"";
  width:64px;
  height:30px;
  background-image:url("../img/icons/section-title-icon.svg");
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
}
.section-heading__title:after{
  content:attr(data-label);
  color:#666666;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-family:Roboto;
  font-style:normal;
  font-weight:300;
  line-height:120%;
  letter-spacing:1.2px;
}
@media screen and (min-width: 768px){
  .section-heading__title:after{
    font-size:14px;
    letter-spacing:1.4px;
  }
}
.section__inner-heading__title{
  color:#333333;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:140%;
  letter-spacing:1px;
}
@media screen and (min-width: 768px){
  .section__inner-heading__title{
    font-size:32px;
    letter-spacing:1.6px;
  }
}
.kv__left{
  width:100%;
  display:flex;
  flex-direction:column;
  position:relative;
  flex:1;
  overflow:hidden;
}

.kv__inner{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  overflow:hidden;
  z-index:0;
  min-height:100%;
  flex:1;
  position:relative;
}
@media screen and (min-width: 1280px){
  .kv__inner{
    position:static;
  }
}

.kv__img{
  display:block;
  width:100%;
  height:100%;
}
.kv__img img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 0%;
}
@media screen and (min-width: 768px){
  .kv__img img{
    object-position:bottom;
  }
}

.kv__content{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  position:absolute;
  top:0;
  right:0;
  left:0;
}
@media screen and (min-width: 768px){
  .kv__content{
    top:auto;
    bottom:0;
    right:0;
    left:0;
    flex-direction:row;
    align-items:flex-start;
    gap:0;
    padding:16px;
    background-color:rgba(0, 0, 0, 0.5);
  }
}
@media screen and (min-width: 1024px){
  .kv__content{
    justify-content:center;
  }
}
@media screen and (min-width: 1080px){
  .kv__content{
    padding:24px 40px;
  }
}
@media screen and (min-width: 1440px){
  .kv__content{
    padding:32px 0 32px 40px;
  }
}

.kv__content__inner{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:100%;
}
.kv__content__left{
  display:flex;
  flex-direction:column-reverse;
  align-items:center;
  width:100%;
}
@media screen and (min-width: 768px){
  .kv__content__left{
    flex-direction:row;
    align-items:center;
    gap:0;
  }
}
.kv__content__left{
}
@media screen and (min-width: 1024px){
  .kv__content__left::after{
    content:"";
    display:block;
    width:336px;
    flex:0 0 auto;
  }
}
@media screen and (min-width: 1920px){
  .kv__content__left::after{
    width:432px;
  }
}

.kv-fair-info{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  width:100%;
  background-color:rgba(0, 0, 0, 0.5);
  padding:16px;
}
@media screen and (min-width: 768px){
  .kv-fair-info{
    width:fit-content;
    gap:16px;
    background-color:transparent;
    padding:0;
    flex:1;
  }
}
@media screen and (min-width: 1024px){
  .kv-fair-info{
    flex:0;
  }
}

.kv-fair-info__title{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  width:100%;
}
.kv-fair-info__title::after{
  content:"";
  display:block;
  width:100%;
  height:1px;
  background-color:#FFFFFF;
}
@media screen and (min-width: 768px){
  .kv-fair-info__title{
    width:fit-content;
  }
}
@media screen and (min-width: 1024px){
  .kv-fair-info__title{
    gap:16px;
  }
}

.kv-fair-info__logo-sp{
  display:block;
  height:auto;
}
@media screen and (min-width: 768px){
  .kv-fair-info__logo-sp{
    display:none;
  }
}

.kv-fair-info__logo-pc{
  display:none;
}
@media screen and (min-width: 768px){
  .kv-fair-info__logo-pc{
    display:block;
    width:clamp(300px, 18.06vw + 161.33px, 608px);
    height:auto;
    aspect-ratio:608/61;
  }
}
@media screen and (min-width: 1920px){
  .kv-fair-info__logo-pc{
    width:608px;
  }
}

.kv-fair-info__period{
  display:flex;
  align-items:center;
  justify-content:center;
}

.kv-fair-info__period-text{
  color:#FFFFFF;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:2.4px;
}
@media screen and (min-width: 1280px){
  .kv-fair-info__period-text{
    font-size:18px;
    letter-spacing:3.6px;
  }
}
@media screen and (min-width: 1440px){
  .kv-fair-info__period-text{
    font-size:24px;
  }
}

.kv-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  align-self:center;
  width:100%;
  padding:4px 0;
  background-color:#F1F1F1;
}
@media screen and (min-width: 768px){
  .kv-copy{
    padding:0;
    flex:1;
    width:fit-content;
    background-color:transparent;
  }
}
.kv-copy span{
  text-align:center;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:140%;
  letter-spacing:0.8px;
}
@media screen and (min-width: 768px){
  .kv-copy span{
    color:#FFFFFF;
    font-size:20px;
    letter-spacing:1.4px;
  }
}
@media screen and (min-width: 1280px){
  .kv-copy span{
    font-size:24px;
  }
}
@media screen and (min-width: 1440px){
  .kv-copy span{
    font-size:28px;
  }
}
@media screen and (min-width: 1920px){
  .kv-copy{
    flex:1;
    align-self:stretch;
  }
}

.magnetic-area{
  position:absolute;
  bottom:16px;
  right:16px;
}
@media screen and (min-width: 1080px){
  .magnetic-area{
    bottom:24px;
    right:40px;
  }
}
@media screen and (min-width: 1440px){
  .magnetic-area{
    bottom:32px;
  }
}
.kv-heading__label{
  width:100%;
  padding:4px 16px;
  display:flex;
  justify-content:center;
  align-items:center;
  background-color:#00A040;
  position:relative;
  z-index:11;
}
.kv-heading__label span{
  color:#FFFFFF;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-weight:700;
  line-height:140%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1024px){
  .kv-heading__label.sp{
    display:none;
  }
}
@media screen and (min-width: 1024px){
  .kv-sub-copy__heading-text{
    height:100%;
    color:#FFFFFF;
    text-align:center;
    font-feature-settings:"halt" on;
    font-size:14px;
    font-weight:700;
    line-height:140%;
    letter-spacing:0.05em;
    border-radius:0 0 24px 0;
  }
}
@media screen and (min-width: 1440px){
  .kv-sub-copy__heading-text{
    font-size:16px;
  }
}
@media (min-width: 1680px){
  .kv-sub-copy__heading-text{
    font-size:24px;
    padding:0 24px;
  }
}
.kv-heading-outer{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:end;
  background-image:url("/img/background/bg-mottle-pattern.webp");
  background-size:80px 80px;
  background-position:top left;
  background-repeat:repeat;
  position:relative;
}
@media screen and (min-width: 1024px){
  .kv-heading-outer{
    width:fit-content;
    padding:24px 48px 0 16px;
    border-radius:0 72px 0 0;
    margin-left:-40px;
  }
}
.kv-heading-bg-left{
  width:fit-content;
  position:absolute;
  left:0;
  top:-72px;
}

.kv-heading-bg-right{
  width:fit-content;
  position:absolute;
  right:-72px;
  bottom:0;
}
.kv-heading-body{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:16px;
}
.kv-heading{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
}

.kv-title{
  width:100%;
  max-width:304px;
  height:auto;
  margin:0 auto;
}
.kv-title svg{
  width:100% !important;
  height:auto !important;
}
@media screen and (min-width: 1024px){
  .kv-title{
    max-width:384px;
  }
}

.kv-title-sub{
  color:#38684B;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1024px){
  .kv-title-sub{
    font-size:18px;
  }
}
@media screen and (min-width: 1440px){
  .kv-title-sub{
    font-size:24px;
  }
}
.kv-heading__img{
  width:100%;
  padding-left:4.2666667%;
  padding-bottom:126px;
  display:flex;
  justify-content:end;
}
.kv-heading__img img{
  width:100%;
  max-height:416px;
  aspect-ratio:63/73;
  object-fit:cover;
  border-radius:24px 0 0 24px;
}
@media screen and (min-width: 1024px){
  .kv-heading__img{
    display:none;
    visibility:hidden;
  }
}
.kv-sub-copy{
  display:none;
  visibility:hidden;
}
@media screen and (min-width: 1024px){
  .kv-sub-copy{
    display:block;
    visibility:visible;
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:32px;
  }
}
.kv-logo{
  display:none;
}
@media screen and (min-width: 1024px){
  .kv-logo{
    position:absolute;
    top:0;
    left:0;
    z-index:10;
    width:280px;
    height:50px;
    display:flex;
    align-items:center;
    padding:8px;
    background-color:#FFFFFF;
  }
}
.kv-sub-copy__body.pc{
  display:none;
}
@media screen and (min-width: 1024px){
  .kv-sub-copy__body.pc{
    width:336px;
    height:auto;
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#FFFFFF;
  }
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body.pc{
    width:432px;
  }
}
@media (hover: hover){
  .kv-sub-copy__body:hover .kv-sub-copy__body-icon-circle{
    background-color:#736450;
    border:1px solid #FFFFFF;
  }
  .kv-sub-copy__body:hover .kv-sub-copy__body-icon-img-defalt{
    opacity:0;
    display:none;
  }
  .kv-sub-copy__body:hover .kv-sub-copy__body-icon-img-hover{
    display:block;
    opacity:1;
    color:#FFFFFF;
  }
}
.kv-sub-copy__body-container{
  width:100%;
  height:auto;
  padding:9px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:20px;
  color:#736450;
  background:linear-gradient(0deg, rgba(115, 100, 80, 0.03) 0%, rgba(115, 100, 80, 0.03) 100%), #FFFFFF;
  position:relative;
  overflow:hidden;
  z-index:1;
}
.kv-sub-copy__body-container::before{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:137px;
  height:134px;
  background:url("../img/background/bg-leaf-left.webp");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  z-index:-1;
}
.kv-sub-copy__body-container::after{
  content:"";
  position:absolute;
  right:-11px;
  top:21px;
  width:137px;
  height:134px;
  background:url("../img/background/bg-leaf-right.webp");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  z-index:-1;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-container{
    padding:12px 16px;
  }
}

.kv-sub-copy__body-border{
  display:flex;
  height:136px;
  padding:12px 0;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:2px;
  align-self:stretch;
  border-top:1px solid rgba(115, 100, 80, 0.5);
  border-bottom:1px solid rgba(115, 100, 80, 0.5);
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-border{
    height:176px;
    gap:4px;
  }
}

.kv-sub-copy__body-gift{
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:1px;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-gift{
    font-size:24px;
  }
}
.kv-sub-copy__body-text-container{
  width:auto;
  padding:8px 0;
  display:flex;
  align-items:center;
  gap:4px;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-text-container{
    gap:8px;
  }
}

.kv-sub-copy__body-max-text{
  writing-mode:vertical-rl;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:400;
  line-height:110%;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-max-text{
    font-size:24px;
  }
}
.kv-sub-copy__body-text-inner{
  width:auto;
  display:flex;
  align-items:end;
}

.kv-sub-copy__body-price{
  font-feature-settings:"halt" on;
  font-style:italic;
  font-size:50px;
  font-weight:300;
  line-height:100%;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-price{
    font-size:64px;
  }
}

.kv-sub-copy__body-text{
  font-feature-settings:"halt" on;
  font-size:26px;
  font-weight:400;
  line-height:100%;
  letter-spacing:1.6px;
  padding-bottom:4px;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-text{
    font-size:32px;
    padding-bottom:8px;
  }
}

.kv-sub-copy__body-footer{
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:1px;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-footer{
    font-size:20px;
  }
}

.kv-sub-copy__body-icon{
  padding:0 6px;
  background-color:#736450;
  display:flex;
  align-self:stretch;
  align-items:center;
  justify-content:center;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-icon{
    padding:0 8px;
  }
}

.kv-sub-copy__body-icon-circle{
  width:18px;
  height:18px;
  padding:2px 1px 2px 3px;
  background-color:#FFFFFF;
  border-radius:12px;
  display:flex;
  justify-content:center;
  align-items:center;
  align-self:center;
  aspect-ratio:1/1;
  transition:background-color 0.3s ease, border-color 0.3s ease;
}
@media screen and (min-width: 1920px){
  .kv-sub-copy__body-icon-circle{
    width:24px;
    height:24px;
    padding:4px 3px 4px 5px;
  }
}

.kv-sub-copy__body-icon-img-defalt{
  display:block;
  width:16px;
  height:auto;
  color:#736450;
  transition:opacity 0.3s ease;
}

.kv-sub-copy__body-icon-img-hover{
  display:none;
  width:16px;
  height:auto;
  color:#FFFFFF;
  opacity:0;
  transition:opacity 0.3s ease;
}
.kv-attention{
  width:fit-content;
  position:absolute;
  right:0;
  bottom:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px 8px;
  font-size:10px;
  font-style:normal;
  font-weight:400;
  line-height:130%;
  letter-spacing:0.5px;
  text-align:left;
  color:#FFFFFF;
  background-color:rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 768px){
  .kv-attention{
    bottom:auto;
    top:0;
    font-size:12px;
    letter-spacing:0.6px;
  }
}
.kv-side{
  display:none;
  visibility:hidden;
  background-image:url("../img/background/geometric-pattern-bg.webp");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
@media screen and (min-width: 1660px){
  .kv-side{
    padding-top:clamp(20px, 1.94vw, 37.25px);
    padding-bottom:clamp(20px, 1.94vw, 37.25px);
    visibility:visible;
    width:30vw;
    max-width:312px;
    min-height:clamp(645px, 20.39vw + 568.54px, 960px);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:16px;
    height:auto;
  }
}
.kv-side__heading{
  width:100%;
  padding:0 32px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  border-radius:0 32px;
}

.kv-side__heading-special{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:32px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:1.6px;
  text-decoration-line:underline;
  text-decoration-style:solid;
  text-decoration-skip-ink:auto;
  text-decoration-thickness:2.5%;
  text-underline-offset:30%;
}

.kv-side__heading-special-details{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:400;
  line-height:110%;
}

.kv-side__heading-special-num{
  font-size:48px;
  font-style:italic;
  font-weight:500;
  line-height:110%;
}
.kv-side-list{
  width:100%;
  padding:0 32px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  flex:1;
}
.kv-side-item{
  width:100%;
  position:relative;
  max-width:248px;
  height:100%;
  display:flex;
  flex-direction:column-reverse;
  align-items:flex-start;
  justify-content:center;
  gap:4px;
}
.kv-side-item__inner{
  width:fit-content;
  height:100%;
  display:flex;
  flex-direction:column-reverse;
  align-items:center;
}
.kv-side-item__contents{
  width:100%;
  padding:8px 16px;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background-color:#FFFFFF;
}

.kv-side-item__inner.bronze .kv-side-item__contents{
  gap:8px;
}

.kv-side-item__product{
  width:fit-content;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:4px;
}
.kv-side-item__product-item{
  width:100%;
  display:flex;
  justify-content:stretch;
  align-items:center;
  gap:8px;
  color:#333333;
  text-align:center;
  font-size:14px;
  font-style:normal;
  font-weight:500;
  line-height:140%;
}
.kv-side-item__product-item .contract-or{
  width:28px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background-color:#FFFFFF;
  border-radius:50%;
  font-size:14px;
  font-style:italic;
  font-weight:700;
  line-height:100%;
}
@media screen and (min-width: 1440px){
  .kv-side-item__product-item .contract-or{
    width:32px;
    height:32px;
    font-size:14px;
  }
}
.kv-side-item__product-item > span{
  display:flex;
  align-items:center;
  gap:4px;
}

.kv-side-item__desc{
  color:#333333;
  text-align:center;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:140%;
  letter-spacing:0.6px;
}
.kv-side-item__label{
  width:fit-content;
  padding:4px 41px 4px 16px;
  height:32px;
  display:inline-flex;
  align-items:center;
  clip-path:polygon(0% 0%, 100% 0%, 96% 50%, 100% 100%, 0% 100%);
  color:#FFFFFF;
}
.kv-side-item__label.gold{
  background-color:#D6A531;
}
.kv-side-item__label.silver{
  background-color:#8D8D8D;
}
.kv-side-item__label.bronze{
  background-color:#B26E40;
}

.label-text{
  color:#FFFFFF;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
}

.label-text-price{
  color:#FFF;
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:italic;
  font-weight:500;
  line-height:100%;
}
.kv-side-item__img{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.tour-inner{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  align-self:stretch;
  gap:16px;
  width:100%;
}
@media screen and (min-width: 1024px){
  .tour-inner{
    gap:24px;
  }
}
@media screen and (min-width: 1440px){
  .tour-inner{
    display:contents;
  }
}
.bonus-header{
  display:flex;
  flex-direction:row;
  align-self:flex-start;
  gap:16px;
  width:100%;
}
@media screen and (min-width: 1024px){
  .bonus-header{
    flex-direction:row;
    gap:24px;
  }
}
@media screen and (min-width: 1440px){
  .bonus-header{
    grid-row:1;
    height:100%;
  }
}
@media screen and (min-width: 1024px){
  .bonus-header:first-child{
    width:100%;
    flex-direction:row;
    align-items:flex-start;
    justify-content:flex-start;
    gap:24px;
  }
}
@media screen and (min-width: 1024px){
  .bonus-header:last-child{
    width:100%;
    flex-direction:row;
    align-items:stretch;
    justify-content:center;
    gap:24px;
  }
}
.bouns-box{
  width:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .bouns-box:first-child{
    width:fit-content;
    display:flex;
    align-items:flex-start;
  }
}
.bouns-box:last-child{
  gap:8px;
}

.bouns-box__label{
  display:flex;
  flex-direction:column-reverse;
  gap:0;
}

.bouns-label{
  display:flex;
  align-items:center;
}
.bouns-label span{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.6px;
  display:flex;
  align-items:center;
  gap:8px;
}
.bouns-label span::before, .bouns-label span::after{
  content:"";
  width:16px;
  height:1px;
  background-color:#333333;
  flex-shrink:0;
}
.bouns-label span::before{
  transform:rotate(45deg);
}
.bouns-label span::after{
  transform:rotate(135deg);
}
@media screen and (min-width: 1024px){
  .bouns-label span{
    font-size:16px;
    letter-spacing:0.8px;
  }
  .bouns-label span::before, .bouns-label span::after{
    width:24px;
  }
}
.bouns-box__desc{
  text-align:left;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.7px;
}
@media screen and (min-width: 1024px){
  .bouns-box__desc{
    font-size:15px;
    letter-spacing:0.75px;
  }
}
.bouns-box__attention{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.6px;
}
.bouns-number{
  width:88px;
  height:77px;
  aspect-ratio:8/7;
  flex-shrink:0;
}
@media screen and (min-width: 1024px){
  .bouns-number{
    position:static;
    width:112px;
    height:98px;
  }
}

.tour-inner .bouns-number{
  margin-top:18px;
}
@media screen and (min-width: 768px){
  .tour-inner .bouns-number{
    margin-top:24px;
  }
}

.bonus-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
@media screen and (min-width: 1024px){
  .bonus-text{
    gap:16px;
  }
}
.bonus-container{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  width:100%;
}
@media screen and (min-width: 1024px){
  .bonus-container{
    gap:40px;
  }
}
@media screen and (min-width: 1440px){
  .bonus-container{
    display:contents;
  }
}

.bouns-detail__banner{
  width:100%;
  height:auto;
  padding:12px 16px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  gap:4px;
  overflow:hidden;
  z-index:1;
  color:#FFFFFF;
  position:relative;
  background:linear-gradient(0deg, rgba(115, 100, 80, 0.03) 0%, rgba(115, 100, 80, 0.03) 100%), #FFFFFF;
}
@media screen and (min-width: 1024px){
  .bouns-detail__banner{
    padding:40px 48px;
  }
}
@media screen and (min-width: 1440px){
  .bouns-detail__banner{
    grid-row:2;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
}

.bouns-detail__banner__bg-left{
  position:absolute;
  left:0;
  bottom:0;
  width:clamp(93px, 15vw, 193px);
  height:auto;
}
@media screen and (min-width: 1024px){
  .bouns-detail__banner__bg-left{
    width:191px;
  }
}

.bouns-detail__banner__bg-right{
  position:absolute;
  right:0;
  top:22px;
  width:clamp(92px, 15vw, 191px);
  height:auto;
}
@media screen and (min-width: 1024px){
  .bouns-detail__banner__bg-right{
    top:0;
    width:193px;
  }
}

.bouns-detail__banner__inner{
  padding:24px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:4px;
  align-self:stretch;
  border-top:1px solid rgba(115, 100, 80, 0.5);
  border-bottom:1px solid rgba(115, 100, 80, 0.5);
}
@media screen and (min-width: 1440px){
  .bouns-detail__banner__inner{
    height:100%;
  }
}
.bouns-detail__title{
  color:#736450;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:1px;
}
@media screen and (min-width: 1024px){
  .bouns-detail__title{
    font-size:24px;
    letter-spacing:1.2px;
  }
}
.bouns-detail__text{
  width:fit-content;
  display:flex;
  align-items:center;
  gap:8px;
}

.bouns-detail__text__max{
  color:#736450;
  writing-mode:vertical-rl;
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:400;
  line-height:110%;
}
@media screen and (min-width: 1024px){
  .bouns-detail__text__max{
    font-size:32px;
  }
}
.bouns-detail__text-container{
  width:fit-content;
  display:flex;
  align-items:end;
  padding:8px 0;
}

.bouns-detail__text__price{
  color:#736450;
  font-feature-settings:"halt" on;
  font-size:64px;
  font-style:italic;
  font-weight:300;
  line-height:100%;
}
@media screen and (min-width: 1024px){
  .bouns-detail__text__price{
    font-size:88px;
  }
}

.bouns-detail__text__yen{
  color:#736450;
  font-feature-settings:"halt" on;
  font-size:32px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:1.6px;
  transform:translateY(-10px);
}

.bouns-detail__footer{
  color:#736450;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:1px;
}
@media screen and (min-width: 1024px){
  .bouns-detail__footer{
    font-size:24px;
    letter-spacing:1.2px;
  }
}
.bouns-notes{
  width:100%;
}
@media screen and (min-width: 1440px){
  .bouns-notes{
    grid-column:1;
    grid-row:3;
    height:100%;
    display:flex;
    flex-direction:column;
  }
}

.bouns-notes__inner{
  height:auto;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
@media screen and (min-width: 1440px){
  .bouns-notes__inner{
    flex:1;
  }
}

.bouns-notes__title{
  display:flex;
  padding:4px 16px;
  align-items:center;
  align-self:stretch;
  background:linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), #9F9F9F;
}
.bouns-notes__title span{
  color:#FFFFFF;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.7px;
}

.notes-wrap{
  position:relative;
  padding:16px;
  border-bottom:1px solid #9F9F9F;
  border-left:1px solid #9F9F9F;
  border-right:1px solid #9F9F9F;
}
@media screen and (min-width: 1440px){
  .notes-wrap{
    flex:1;
  }
}

.notes-trigger{
  display:none;
}

.notes-item{
  position:relative;
  overflow:hidden;
  height:80px;
  transition:height 0.3s;
}

.notes-btn{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:8px;
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:56px;
  padding-bottom:15px;
  cursor:pointer;
  background:linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFF 53.37%), linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFF 77.88%);
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.8px;
}
.notes-btn::before{
  content:"";
  width:14px;
  height:14px;
  display:block;
  background-image:url("../img/icons/plus-black.svg");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.notes-btn::after{
  content:"もっと見る";
}
.notes-trigger:checked{
}
.notes-trigger:checked ~ .notes-btn{
  display:none;
}
.notes-trigger:checked{
}
.notes-trigger:checked ~ .notes-item{
  height:auto;
}
.notes-trigger:checked ~ .notes-item::before{
  display:none;
}
.bouns-notes__list{
  width:fit-content;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  padding-right:16px;
}

.bouns-notes__item{
  width:fit-content;
  display:flex;
  align-items:stretch;
  gap:0;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.6px;
}
.bouns-notes__item::before{
  content:"・";
  padding-right:7px;
}
.contract-inner{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
  align-self:stretch;
  width:100%;
  max-width:1067px;
}
@media screen and (min-width: 1024px){
  .contract-inner{
    gap:24px;
  }
}
@media screen and (min-width: 1440px){
  .contract-inner{
    display:contents;
  }
}

.contract-inner .bonus-header{
  margin-top:18px;
}
@media screen and (min-width: 768px){
  .contract-inner .bonus-header{
    margin-top:24px;
  }
}

.contract-content{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .contract-content{
    gap:40px;
  }
}
@media screen and (min-width: 1440px){
  .contract-content{
    display:contents;
  }
}
.contract-content__inner{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .contract-content__inner{
    gap:40px;
  }
}
.contract-content__inner:last-child{
  position:relative;
}
.contract-notes{
  width:100%;
}
@media screen and (min-width: 1440px){
  .contract-notes{
    grid-column:2;
    grid-row:3;
    height:100%;
    display:flex;
    flex-direction:column;
  }
}

.contract-notes__inner{
  height:auto;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
@media screen and (min-width: 1440px){
  .contract-notes__inner{
    flex:1;
  }
}

.contract-notes__title{
  display:flex;
  padding:4px 16px;
  align-items:center;
  align-self:stretch;
  background:linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), #9F9F9F;
}
.contract-notes__title span{
  color:#FFFFFF;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.7px;
}

.notes-wrap{
  position:relative;
  padding:16px;
  border-bottom:1px solid #9F9F9F;
  border-left:1px solid #9F9F9F;
  border-right:1px solid #9F9F9F;
}
@media screen and (min-width: 1440px){
  .notes-wrap{
    padding-bottom:16px;
  }
}

.notes-trigger{
  display:none;
}

.notes-item{
  position:relative;
  overflow:hidden;
  height:113px;
  transition:height 0.3s;
}
@media screen and (min-width: 1440px){
  .notes-item{
    height:auto;
    overflow:visible;
  }
}

.notes-btn{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:8px;
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:56px;
  padding-bottom:15px;
  cursor:pointer;
  background:linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFF 53.37%), linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFF 77.88%);
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.8px;
}
.notes-btn::before{
  content:"";
  width:14px;
  height:14px;
  display:block;
  background-image:url("../img/icons/plus-black.svg");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.notes-btn::after{
  content:"もっと見る";
}
@media screen and (min-width: 1440px){
  .notes-btn{
    display:none;
  }
}
.notes-trigger:checked{
}
.notes-trigger:checked ~ .notes-btn{
  display:none;
}
.notes-trigger:checked{
}
.notes-trigger:checked ~ .notes-item{
  height:auto;
}
.notes-trigger:checked ~ .notes-item::before{
  display:none;
}
.contract-notes__list{
  width:fit-content;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  padding-right:16px;
}

.contract-notes__item{
  width:fit-content;
  display:flex;
  align-items:stretch;
  gap:0;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.6px;
}
.contract-notes__item::before{
  content:"・";
  padding-right:7px;
}

.contract-content__slider-area{
  background-image:url("../img/background/geometric-pattern-bg.webp");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  width:100%;
  display:flex;
  padding:24px 40px;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .contract-content__slider-area{
    padding:32px 40px;
    gap:24px;
  }
}
@media screen and (min-width: 1440px){
  .contract-content__slider-area{
    grid-row:2;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
}
.contract-heading{
  display:flex;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  gap:24px;
}
.contract-heading::before, .contract-heading::after{
  content:"";
  display:flex;
  width:100%;
  height:1px;
  background-color:#333333;
}

.contract-heading__text{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:400;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  white-space:nowrap;
}

.contract-heading__num{
  font-size:48px;
  font-style:italic;
  font-weight:500;
  line-height:110%;
}
.contract-content__box{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  visibility:visible !important;
}

.contract-slider{
  width:100%;
  height:auto;
  display:flex;
  flex-direction:row;
  visibility:visible !important;
}
@media screen and (min-width: 768px){
  .contract-slider{
    display:flex !important;
    justify-content:center;
    align-items:stretch;
    gap:16px;
  }
}
.contract-slider__track{
  width:100%;
  max-width:306px;
  overflow:visible !important;
}
@media screen and (min-width: 768px){
  .contract-slider__track{
    width:fit-content;
    max-width:100%;
  }
}
.contract-slider__item{
  width:fit-content !important;
  height:auto;
  flex:1;
  display:flex;
}
.contract-container{
  width:100%;
  min-width:272px;
  height:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
@media screen and (min-width: 768px){
  .contract-container{
    min-width:197px;
  }
}
@media screen and (min-width: 1440px){
  .contract-container{
    width:100%;
  }
}
@media screen and (min-width: 1920px){
  .contract-container{
    width:313px;
  }
}
.splide__pagination{
  position:static !important;
  gap:12px !important;
}
@media screen and (min-width: 1024px){
  .splide__pagination{
    display:none;
  }
}
.splide__pagination__page{
  margin:0 !important;
  padding:0 !important;
  background-color:#D4D4D4 !important;
}
.splide__pagination__page.is-active{
  width:8px !important;
  height:8px !important;
  background-color:#333333 !important;
  transform:none !important;
}
.contract-wrapper{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column-reverse;
  align-items:stretch;
  gap:4px;
}

.product-container{
  display:flex;
  flex-direction:column;
  flex:1 0 auto;
  gap:8px;
  padding:8px 16px 16px 16px;
  background-color:#FFFFFF;
}
@media screen and (min-width: 1024px){
  .product-container{
    padding:8px 16px 16px;
  }
}
.contract-container__content{
  width:fit-content;
  display:flex;
  flex-direction:column-reverse;
  align-items:center;
  flex:1;
}
.contract-container__product{
  width:fit-content;
  min-height:40px;
  padding:10px 0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:4px;
}
.product__item{
  width:100%;
  display:flex;
  justify-content:stretch;
  gap:8px;
  text-align:left;
  color:#333333;
  font-size:14px;
  font-style:normal;
  font-weight:500;
  line-height:140%;
}

.contract-container__desc{
  color:#333333;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:180%;
}
.contract-label{
  width:fit-content;
  display:flex;
  align-items:center;
}
.contract-label{
  width:fit-content;
  height:32px;
  padding:0 41px 0 16px;
  display:flex;
  align-items:flex-end;
  clip-path:polygon(0% 0%, 100% 0%, 96% 50%, 100% 100%, 0% 100%);
  color:#FFFFFF;
}
.contract-label.gold{
  background-color:#D6A531;
}
.contract-label.silver{
  background-color:#8D8D8D;
}
.contract-label.bronze{
  background-color:#B26E40;
}

.label-inner{
  width:fit-content;
  display:flex;
  align-items:center;
  padding-bottom:4px;
}

.label-text-container{
  width:fit-content;
  display:flex;
  flex-direction:row;
  align-items:end;
}

.label-text-max{
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
}

.label-text-price{
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:italic;
  font-weight:500;
  line-height:100%;
}

.label-text-unit{
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  padding-bottom:4px;
}
.contract-slide-img{
  width:100%;
  max-width:313px;
  height:auto;
  aspect-ratio:16/9;
}
.contract-slider__item:last-child .contract-kanta{
  padding-top:8px;
  color:#333333;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:140%;
  letter-spacing:0.6px;
  border-top:1px solid #C8C8C8;
}
.contract-slider__item:last-child .contract-container__product{
  padding:0;
}

.br__max-610{
  display:block;
}
@media screen and (min-width: 610px){
  .br__max-610{
    display:none;
  }
}
.search-container{
  width:100%;
  display:flex;
  align-items:center;
  flex-direction:column;
  gap:24px;
}

.search-container .speech-balloon__text{
  background-color:#FFFFFF;
}
.search-container .speech-balloon__text::after{
  background-color:#FFFFFF;
}
.search-list__title-large{
  font-size:32px;
  font-style:italic;
  font-weight:500;
  line-height:80%;
  letter-spacing:0.05em;
}
.search-filter{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.search-accordion-container{
  padding-bottom:12px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:100%;
  position:relative;
}
.search-accordion-container.is-active{
  padding-bottom:0 !important;
}
@media screen and (min-width: 625px){
  .search-accordion-container{
    justify-content:center;
  }
}
.search-accordion-container{
  position:relative;
}
@media screen and (min-width: 768px){
  .search-accordion-container{
    gap:16px;
    padding-bottom:16px;
  }
}

.search-list__title{
  display:none;
}
.search-container.is-active .search-list__title{
  width:fit-content;
  display:flex;
  flex-direction:row;
  align-items:end;
  font-feature-settings:"halt" on;
  font-family:"Noto Sans JP";
  font-size:18px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.05em;
  padding-bottom:8px;
  border-bottom:1px solid;
}
.search-accordion{
  display:contents;
}
.search-accordion .search-accordion__body{
  z-index:10;
  position:static;
  display:none;
  order:2;
  width:100%;
  background-color:#FFFFFF;
  transition:opacity 0.3s, visibility 0.3s;
}
.search-accordion .search-accordion__icon.close{
  display:flex;
}
.search-accordion .search-accordion__icon.open{
  display:none;
}
.search-accordion{
}
.search-accordion.is-open .search-accordion__trigger-container{
  z-index:2;
  order:1;
  background-color:#666666;
}
.search-accordion.is-open .search-accordion__trigger-container .search-accordion__title{
  color:#FFFFFF;
}
.search-accordion.is-open .search-accordion__icon{
  color:#FFFFFF;
}
.search-accordion.is-open .search-accordion__icon.close{
  display:none;
}
.search-accordion.is-open .search-accordion__icon.open{
  display:flex;
}
.search-accordion.is-open{
}
.search-accordion.is-open .search-accordion__body{
  display:flex;
  width:100%;
  background-color:#FFFFFF;
}
@media screen and (min-width: 1280px){
  .search-accordion.is-open{
  }
  .search-accordion.is-open .search-accordion__trigger-container{
    position:relative;
    z-index:2;
  }
  .search-accordion.is-open{
  }
  .search-accordion.is-open .search-accordion__body{
    opacity:1;
    visibility:visible;
    display:flex;
    width:100%;
    max-width:1140px;
    background-color:#FFFFFF;
    z-index:1;
  }
}
.search-accordion{
}
@media screen and (min-width: 1280px){
  .search-accordion.right{
  }
  .search-accordion.right .search-accordion__body{
    left:auto;
    right:0;
  }
}
.search-accordion__trigger-container{
  width:max-content;
  flex:0 0 auto;
  order:1;
  background-color:#FFFFFF;
  border-radius:22px;
  box-shadow:0 0 2px 0 rgba(0, 0, 0, 0.2);
}

.search-accordion__trigger{
  width:auto;
  display:flex;
  flex-direction:row-reverse;
  height:44px;
  padding:0 16px;
  align-items:center;
  justify-content:center;
  gap:8px;
  cursor:pointer;
  color:#333333;
  transition:opacity 0.3s;
}
@media (hover: hover){
  .search-accordion__trigger:hover{
    opacity:0.7;
  }
}
@media screen and (min-width: 768px){
  .search-accordion__trigger{
    height:44px;
  }
}

.search-accordion__title{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:500;
  line-height:100%;
  letter-spacing:0.7px;
}
.search-accordion__inner{
  width:100%;
  display:flex;
  flex-wrap:wrap;
  padding:32px 24px;
  flex-direction:column;
  align-items:flex-start;
  gap:40px;
  align-self:stretch;
  align-content:start;
}
@media screen and (min-width: 768px){
  .search-accordion__inner{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
  }
}
@media screen and (min-width: 1280px){
  .search-accordion__inner{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    grid-column-gap:32px;
    grid-row-gap:40px;
    padding:32px 56px;
  }
}
.search-subarea{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
}
.search-subarea__title{
  width:fit-content;
  display:flex;
  align-items:center;
  gap:16px;
  padding-left:4px;
  border-left:4px solid #333333;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:500;
  line-height:100%;
  letter-spacing:0.7px;
}
.search-location-list{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  align-content:flex-start;
  align-items:stretch;
  gap:24px;
}
.search-location-list li{
  overflow:visible;
  line-height:1;
}
.search-location-list li a{
  display:inline;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-family:"Noto Sans JP";
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.6px;
  text-decoration-line:underline;
  text-decoration-style:solid;
  text-underline-offset:25%;
  transition:opacity 0.3s;
}
@media (hover: hover){
  .search-location-list li a:hover{
    opacity:0.6;
  }
}
.search-benefits{
  background-image:url(../img/background/geometric-pattern-bg.webp);
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
  margin-top:0;
  padding:16px 24px;
}
@media screen and (min-width: 1024px){
  .search-benefits{
    padding:24px 56px;
    gap:16px;
  }
}

.search-benefits,
.search-benefits__list{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
}
@media screen and (min-width: 768px){
  .search-benefits,
  .search-benefits__list{
    gap:24px;
  }
}
@media screen and (min-width: 768px){
  .search-benefits__list{
    flex-direction:row;
  }
}
.search-benefit-item{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
}
.search-benefit-item input[type=checkbox]{
  appearance:none;
  -webkit-appearance:none;
  width:16px;
  height:16px;
  background-color:#FFFFFF;
  border:1px solid #D4D4D4;
  border-radius:4px;
  position:relative;
  cursor:pointer;
  transition:background-color 0.2s, border-color 0.2s;
  margin:0;
}
.search-benefit-item input[type=checkbox]:checked{
  background-color:#595757;
  border-color:#595757;
}
.search-benefit-item input[type=checkbox]:checked::after{
  content:"";
  position:absolute;
  left:4px;
  top:0px;
  width:6px;
  height:11px;
  border:solid #FFFFFF;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}

.search-benefit-item__content,
.search-result-list__label-text{
  display:flex;
  align-items:center;
  height:32px;
  padding:6px 14px 6px 8px;
  color:#FFFFFF;
  position:relative;
  z-index:1;
  background-color:#ccc;
  clip-path:polygon(0% 0%, 100% 0%, 96% 50%, 100% 100%, 0% 100%);
}
.search-benefit-item__content.gold,
.search-result-list__label-text.gold{
  background-color:#D6A531;
}
.search-benefit-item__content.silver,
.search-result-list__label-text.silver{
  background-color:#8D8D8D;
}
.search-benefit-item__content.bronze,
.search-result-list__label-text.bronze{
  background-color:#B26E40;
}
.search-benefit-item__content .search-benefit-item__price,
.search-result-list__label-text .search-benefit-item__price{
  transform:translateY(1px);
}
.search-benefit-item__content .search-benefit-item__price,
.search-benefit-item__content .search-result-list__label-price,
.search-result-list__label-text .search-benefit-item__price,
.search-result-list__label-text .search-result-list__label-price{
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:italic;
  font-weight:700;
  line-height:100%;
  letter-spacing:1px;
}
.search-benefit-item__content .search-benefit-item__text,
.search-benefit-item__content .search-benefit-item__label-max,
.search-result-list__label-text .search-benefit-item__text,
.search-result-list__label-text .search-benefit-item__label-max{
  font-feature-settings:"halt" on;
  font-family:"Noto Sans JP";
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.7px;
}

.search-result-list__label-text{
  width:fit-content;
  border-radius:0;
  align-items:flex-end;
  padding:6px 14px 6px 8px;
}

.search-result-list__label-price-text{
  padding-bottom:3px;
  color:#FFFFFF;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.7px;
}
.search-box__result{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .search-box__result{
    gap:40px;
  }
}
.search-result-list{
  width:100%;
  display:grid;
  grid-template-columns:1fr;
  justify-content:center;
  row-gap:32px;
}
@media screen and (min-width: 768px){
  .search-result-list{
    grid-template-columns:repeat(2, minmax(343px, 364px));
    column-gap:24px;
  }
}
@media screen and (min-width: 1280px){
  .search-result-list{
    grid-template-columns:repeat(3, minmax(282px, 1fr));
    justify-content:start;
  }
}

.search-result-list__item{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
}
@media screen and (min-width: 1024px){
  .search-result-list__item{
    max-width:364px;
    gap:16px;
  }
}
.search-result-list__inner{
  width:100%;
  position:relative;
  display:flex;
  flex-direction:column;
  border-radius:4px;
  box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.3);
}
.search-result-list__img-wrap{
  display:flex;
  padding:0 58px 0 56px;
  justify-content:center;
  align-items:center;
  align-self:stretch;
  position:relative;
  overflow:hidden;
  background-color:#FAFAFA;
}
.search-result-list__img-wrap::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color:rgba(0, 0, 0, 0.6);
  opacity:0;
  transition:opacity 0.3s ease;
  pointer-events:none;
  z-index:1;
}

.search-result-list__img{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:contain !important;
}

.search-result-list__link{
  display:block;
  cursor:pointer;
  background-color:#FFFFFF;
}
@media (hover: hover){
  .search-result-list__link:hover{
    background-color:#F3F3F3;
  }
  .search-result-list__link:hover .search-result-list__img-wrap::after{
    opacity:1;
  }
}
.search-result-list__body{
  width:100%;
  padding:16px 16px 12px 16px;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
}
.search-result-list__body::after{
  content:"";
  position:absolute;
  bottom:0;
  left:16px;
  right:16px;
  height:1px;
  background-color:#9F9F9F;
}
.search-result-list__title{
  width:auto;
}
.search-result-list__title span{
  display:flex;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:18px;
  font-style:normal;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.9px;
}
.search-result-link__property-details{
  position:relative;
  z-index:1;
  overflow:hidden;
  width:100%;
  padding:12px 16px 12px 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.7px;
}
.search-result-link__property-details .search-result-link__property-details-text{
  width:100%;
  text-align:center;
  color:#333333;
}

.search-result-link__reservation{
  position:relative;
  z-index:1;
  overflow:hidden;
  width:100%;
  padding:12px 16px 12px 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-radius:4px;
  box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.3);
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.7px;
  background-color:#666666;
}
.search-result-link__reservation .search-result-link__reservation-text{
  width:100%;
  text-align:center;
  color:#FFFFFF;
  transition:color 0.3s;
}
.search-result-link__reservation{
  transition:background-color 0.3s, color 0.3s;
}
.search-result-link__reservation .search-result-link__reservation-svg{
  color:#FFFFFF;
  display:block;
}
.search-result-link__reservation .search-result-link__reservation-svg-hover{
  display:none;
  color:#333333;
}
.search-result-link__reservation{
}
@media (hover: hover){
  .search-result-link__reservation:hover{
    background-color:#FFFFFF;
  }
  .search-result-link__reservation:hover .search-result-link__reservation-text{
    color:#333333;
  }
  .search-result-link__reservation:hover .search-result-link__reservation-svg{
    display:none;
  }
  .search-result-link__reservation:hover .search-result-link__reservation-svg-hover{
    color:#333333;
    display:block;
  }
}
.merit__inner{
  width:100%;
  display:flex;
  padding:40px 4.266666667%;
  flex-direction:column;
  align-items:center;
  gap:32px;
  align-self:stretch;
}
@media screen and (min-width: 1024px){
  .merit__inner{
    padding:64px 0;
    gap:48px;
  }
}

.merit-container{
  width:100%;
  max-width:800px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .merit-container{
    gap:24px;
  }
}

.merit-content-area{
  width:100%;
  max-width:800px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .merit-content-area{
    gap:24px;
  }
}

.merit-text__note{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  align-self:flex-start;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:130%;
  letter-spacing:0.6px;
}
@media screen and (min-width: 1024px){
  .merit-text__note{
    font-size:14px;
    letter-spacing:0.7px;
  }
}
.merit-text__note span{
  position:relative;
  display:flex;
  padding-left:12px;
}
.merit-text__note span::before{
  position:absolute;
  content:"※";
  top:0;
  left:0;
  width:12px;
  height:12px;
}
@media screen and (min-width: 1024px){
  .merit-text__note span{
    padding-left:14px;
  }
  .merit-text__note span::before{
    width:14px;
    height:14px;
  }
}

.merit-list{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
  align-self:stretch;
}
@media screen and (min-width: 768px){
  .merit-list{
    gap:24px;
  }
}

.merit-item{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  align-self:stretch;
  background:linear-gradient(180deg, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0) 47.12%);
}
@media screen and (min-width: 768px){
  .merit-item{
    flex-direction:row-reverse;
    gap:0;
    background:transparent;
  }
}

.merit-item__body{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  align-self:stretch;
  flex:1 0 0;
}

.merit-item__content{
  display:flex;
  padding:0 12px;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  gap:12px;
  flex:1 0 0;
  align-self:stretch;
}
@media screen and (min-width: 768px){
  .merit-item__content{
    padding-left:24px;
    background:linear-gradient(90deg, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0) 47.12%);
  }
}

.merit-item__header{
  display:flex;
  align-items:flex-start;
  gap:8px;
}

.merit-item__label{
  color:#B26E40;
  font-feature-settings:"halt" on;
  font-size:18px;
  font-style:normal;
  font-weight:500;
  line-height:110%;
  letter-spacing:1.8px;
  padding-bottom:4px;
  border-bottom:1px solid #333333;
}

.merit-item__number{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:23px;
  font-style:normal;
  font-weight:500;
  line-height:110%;
  letter-spacing:1.15px;
}

.merit-item__title{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:500;
  line-height:150%;
  letter-spacing:0.7px;
}
@media screen and (min-width: 768px){
  .merit-item__title{
    font-size:18px;
    letter-spacing:0.9px;
  }
}

.merit-item__desc{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:13px;
  font-style:normal;
  font-weight:400;
  line-height:180%;
  letter-spacing:0.65px;
  display:flex;
  padding:0 12px;
  justify-content:center;
  align-items:center;
  align-self:stretch;
}
@media screen and (min-width: 768px){
  .merit-item__desc{
    font-size:14px;
    letter-spacing:0.7px;
    padding:0;
  }
}

.merit-item__img{
  width:166px;
  height:123px;
}
@media screen and (min-width: 768px){
  .merit-item__img{
    width:171px;
    height:126px;
  }
}

.merit-cards{
  display:none;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:16px;
}
@media screen and (min-width: 768px){
  .merit-cards{
    flex-direction:row;
    gap:24px;
  }
}

.merit-card{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  gap:11px;
  background-color:#EFF9FF;
}
@media screen and (min-width: 768px){
  .merit-card{
    flex-direction:row-reverse;
    gap:0;
    flex:1 0 0;
  }
}

.merit-card__exp{
  display:flex;
  padding-left:12px;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  align-self:stretch;
  flex:1 0 0;
}
@media screen and (min-width: 768px){
  .merit-card__exp{
    padding:12px 16px;
  }
}

.merit-card__exp-text{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:500;
  line-height:170%;
  letter-spacing:0.7px;
}

.merit-card__img{
  width:166px;
  height:123px;
}
@media screen and (min-width: 1024px){
  .merit-card__img{
    width:194px;
    height:144px;
  }
}

.sp__block{
  display:block;
}
@media screen and (min-width: 768px){
  .sp__block{
    display:none;
  }
}

.pc__block{
  display:none;
}
@media screen and (min-width: 768px){
  .pc__block{
    display:block;
  }
}

.lineBreak__768{
  display:none;
}
@media screen and (min-width: 768px) and (max-width: 871px){
  .lineBreak__768{
    display:block;
  }
}

.lineBreak__872{
  display:none;
}
@media screen and (min-width: 886px){
  .lineBreak__872{
    display:block;
  }
}
.youtube-text{
  width:100%;
  max-width:800px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:200%;
  letter-spacing:0.7px;
}
@media screen and (min-width: 768px){
  .youtube-text{
    font-size:18px;
    letter-spacing:0.9px;
  }
}

iframe{
  width:100%;
  max-width:800px;
  height:auto;
  aspect-ratio:16/9;
}

.youtube-title{
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.7px;
  color:#333333;
}
@media screen and (min-width: 768px){
  .youtube-title{
    font-size:24px;
    letter-spacing:1.2px;
  }
}
.products-container,
.products-heading{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .products-container,
  .products-heading{
    gap:56px;
  }
}

.products-container__inner{
  width:100vw;
}

.products-heading{
  position:relative;
}
@media screen and (min-width: 1024px){
  .products-heading{
    max-width:1024px;
  }
}
@media screen and (min-width: 1140px){
  .products-heading{
    max-width:1140px;
  }
}
.slider-container{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  min-width:272px;
}
@media screen and (min-width: 1024px){
  .slider-container{
    max-width:555px;
  }
}

.products-slider__container{
  cursor:grab;
}
.products-slider__container:active{
  cursor:grabbing;
}
.slider-container__img{
  width:auto;
  height:auto;
}
.slider-container__img img{
  width:100%;
  height:auto;
  object-fit:cover;
  aspect-ratio:16/9;
}
.slider-container__content{
  width:100%;
  padding-top:12px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
  flex:1;
}
.slider-container__title{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:500;
  line-height:100%;
  letter-spacing:0.8px;
}
.slider-container__desc1{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:180%;
}
.products-slider{
  overflow:visible !important;
}

.products-slider{
  display:flex;
  flex-direction:column;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .products-slider{
    gap:48px;
  }
}

.br-max-1023{
  display:block;
}
@media screen and (min-width: 1024px){
  .br-max-1023{
    display:none;
  }
}
.splide__pagination.products-pagination{
  display:flex;
  align-items:center !important;
  justify-content:center;
  gap:16px !important;
  padding:0 !important;
  margin:0 !important;
}

.products-pagination .splide__pagination li{
  display:flex;
  align-items:flex-start;
}

.splide__pagination__page.products-pagination-page{
  width:16px !important;
  height:3px !important;
  border:none !important;
  border-radius:0 !important;
  margin:0 !important;
  padding:0 !important;
  background-color:#BFBFBF !important;
}
.splide__pagination__page.products-pagination-page.is-active{
  background-color:#333333 !important;
}
@media screen and (min-width: 1024px){
  .splide__pagination__page.products-pagination-page{
    width:40px !important;
  }
}
.coordinate-container{
  position:relative;
  width:100%;
  padding-top:80px;
  background-color:#FFFFFF;
}
@media screen and (min-width: 1440px){
  .coordinate-container{
    background-color:#F1F1F1;
    padding-top:0;
  }
}
.coordinate-container::before{
  content:"";
  display:block;
  position:absolute;
  top:-58px;
  right:0;
  width:136px;
  height:142px;
  background-image:url("../img/background/coordinate-bg-leaf.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center;
  z-index:1;
}
@media screen and (min-width: 1440px){
  .coordinate-container::before{
    top:-16px;
    width:400px;
    height:417px;
  }
}

.coordinate-title{
  text-align:left;
  position:absolute;
  left:4.266666667%;
  top:-24px;
  z-index:2;
}
.coordinate-title span{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:1px;
}
@media screen and (min-width: 1024px){
  .coordinate-title span{
    font-size:24px;
    letter-spacing:1.2px;
    text-align:center;
  }
}
.coordinate-title{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.coordinate-title::before{
  content:attr(data-label);
  color:#666666;
  font-feature-settings:"halt" on;
  font-family:Roboto;
  font-size:40px;
  font-style:normal;
  font-weight:100;
  line-height:110%;
  letter-spacing:4px;
}
@media screen and (min-width: 1440px){
  .coordinate-title::before{
    position:absolute;
    top:-35px;
    left:-40px;
    font-size:64px;
    letter-spacing:6.4px;
    opacity:var(--label-opacity);
    transform:translateY(var(--label-y));
  }
}
@media screen and (min-width: 1920px){
  .coordinate-title::before{
    top:-53px;
    font-size:96px;
    letter-spacing:9.6px;
  }
}
@media screen and (min-width: 1440px){
  .coordinate-title{
    position:static;
    gap:0;
    --label-opacity:0;
    --label-y:20px;
  }
}
.coordinate-container__inner{
  width:100%;
  max-width:100%;
}
@media screen and (min-width: 1440px){
  .coordinate-container__inner{
    display:block;
    position:relative;
    padding-bottom:179px;
    position:relative;
  }
  .coordinate-container__inner::before{
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:179px;
    background-color:#FFFFFF;
    z-index:0;
  }
}
@media screen and (min-width: 1920px){
  .coordinate-container__inner{
    padding-bottom:136px;
  }
  .coordinate-container__inner::before{
    height:136px;
  }
}

#main-carousel{
  width:100%;
  overflow:hidden;
}
@media screen and (min-width: 1440px){
  #main-carousel{
    width:960px;
  }
}
#main-carousel .splide__track{
  overflow:visible;
  cursor:grab;
}
#main-carousel .splide__slide{
  width:100%;
  height:auto;
  aspect-ratio:3/2;
  overflow:hidden;
}
#main-carousel .splide__slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  vertical-align:bottom;
  backface-visibility:hidden;
  transform:translateZ(0);
}
@media screen and (min-width: 1440px){
  #main-carousel .splide__slide img{
    width:960px;
  }
}

#main-carousel img{
  width:100%;
  height:auto;
  vertical-align:bottom;
  aspect-ratio:3/2;
  object-fit:cover;
}

.thumbnail-wrapper{
  display:contents;
  z-index:auto;
}
@media screen and (min-width: 1440px){
  .thumbnail-wrapper{
    display:flex;
    flex-direction:column;
    gap:32px;
    position:absolute;
    left:882px;
    right:0;
    top:117px;
    width:auto;
    padding:56px 24px;
    background-color:#FFFFFF;
  }
}
@media screen and (min-width: 1920px){
  .thumbnail-wrapper{
    left:903px;
    right:0;
    padding:118px 120px;
  }
}

.thumbnail-wrapper__inner{
  display:contents;
}
@media screen and (min-width: 1440px){
  .thumbnail-wrapper__inner{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:32px;
    position:relative;
    z-index:2;
  }
}
.thumbnails{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
  width:100%;
  padding:16px 16px 40px 16px;
}
@media screen and (min-width: 768px) and (max-width: 1439px){
  .thumbnails{
    grid-template-columns:repeat(6, 1fr);
  }
}
@media screen and (min-width: 1440px){
  .thumbnails{
    grid-template-columns:repeat(2, 1fr);
    padding:0;
    gap:24px;
    width:auto;
  }
}
@media screen and (min-width: 1920px){
  .thumbnails{
    grid-template-columns:repeat(3, 1fr);
  }
}

.thumbnail{
  width:100%;
  aspect-ratio:3/2;
  overflow:hidden;
  cursor:pointer;
  position:relative;
}
.thumbnail::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  box-shadow:inset 0 0 0 4px rgba(0, 0, 0, 0.5);
  opacity:0;
  transition:opacity 0.3s ease;
  pointer-events:none;
  z-index:2;
}
@media screen and (min-width: 1440px){
  .thumbnail::after{
    box-shadow:inset 0 0 0 8px rgba(0, 0, 0, 0.5);
  }
}
.thumbnail{
}
@media (hover: hover){
  .thumbnail:hover::after{
    opacity:1;
  }
}
.thumbnail{
}
.thumbnail.is-active::after{
  opacity:1;
}

.thumbnail img{
  width:100%;
  min-width:107px;
  height:100%;
  object-fit:cover;
}
@media screen and (min-width: 1440px){
  .thumbnail img{
    width:242px;
  }
}
.sunlight-point{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:32px 4.266666667%;
  z-index:1;
  background-color:#40372C;
}
@media screen and (min-width: 768px){
  .sunlight-point{
    padding:32px 56px;
    gap:24px;
  }
}
@media screen and (min-width: 1920px){
  .sunlight-point{
    display:contents;
  }
}

.sunlight-point__title{
  color:#FFFFFF;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:140%;
  letter-spacing:1px;
  display:flex;
  align-self:flex-start;
}
@media screen and (min-width: 768px){
  .sunlight-point__title{
    font-size:32px;
    letter-spacing:1.6px;
    grid-column:1/3;
    grid-row:1;
    order:unset;
  }
}
@media screen and (min-width: 1920px){
  .sunlight-point__title{
    order:unset;
  }
}

.sunlight-point__group{
  display:contents;
}
@media screen and (min-width: 1920px){
  .sunlight-point__group{
    display:flex;
    flex-direction:column;
    gap:24px;
    padding:32px 56px;
    background-color:#40372C;
  }
}

.sunlight-point__container{
  display:flex;
  flex-direction:column;
  gap:16px;
  z-index:1;
  width:100%;
}
@media screen and (min-width: 768px){
  .sunlight-point__container{
    gap:24px;
  }
}
@media screen and (min-width: 1920px){
  .sunlight-point__container{
    align-items:center;
    gap:0;
  }
}

.sunlight-point__container-text picture{
  order:2;
}
@media screen and (min-width: 768px){
  .sunlight-point__container-text picture{
    grid-column:2;
    grid-row:2;
    order:unset;
  }
}
@media screen and (min-width: 1920px){
  .sunlight-point__container-text picture{
    order:unset;
  }
}

.sunlight-point__img{
  width:100%;
  height:229px;
  object-fit:cover;
}
@media screen and (min-width: 768px){
  .sunlight-point__img{
    width:343px;
  }
}
@media screen and (min-width: 1024px){
  .sunlight-point__img{
    width:521px;
    height:271px;
  }
}
@media screen and (min-width: 1440px){
  .sunlight-point__img{
    max-width:none;
    width:568px;
    height:213px;
  }
}

.sunlight-point__container-text{
  display:contents;
}
@media screen and (min-width: 768px){
  .sunlight-point__container-text{
    display:grid;
    grid-template-columns:1fr 343px;
    gap:24px;
    align-items:center;
  }
}
@media screen and (min-width: 1024px){
  .sunlight-point__container-text{
    grid-template-columns:1fr 521px;
  }
}
@media screen and (min-width: 1440px){
  .sunlight-point__container-text{
    grid-template-columns:1fr 568px;
  }
}
@media screen and (min-width: 1920px){
  .sunlight-point__container-text{
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    padding:0;
    gap:0;
  }
}

.sunlight-point__list{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:16px;
  padding:0 12px;
  max-width:1240px;
  order:3;
}
@media screen and (min-width: 768px){
  .sunlight-point__list{
    gap:24px;
    padding:0;
    grid-column:1;
    grid-row:2;
    order:unset;
    background-color:#40372C;
  }
}
@media screen and (min-width: 1920px){
  .sunlight-point__list{
    order:unset;
    flex-direction:row;
    order:4;
  }
}

.sunlight-point__item{
  display:flex;
  flex-direction:column;
  gap:8px;
}
@media screen and (min-width: 768px){
  .sunlight-point__item{
    flex:1;
  }
}

.sunlight-point__head{
  display:flex;
  align-items:center;
  gap:12px;
  color:#FFFFFF;
}

.sunlight-point__head__num{
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:1.2px;
}

.sunlight-point__head__title{
  font-feature-settings:"halt" on;
  font-family:"Noto Sans JP";
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.7px;
}

.sunlight-point__desc{
  color:#FFFFFF;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:200%;
  letter-spacing:0.6px;
}

.bg-fixed__container{
  position:relative;
  width:100%;
  height:200px;
  aspect-ratio:1440/200;
}
@media screen and (min-width: 768px){
  .bg-fixed__container{
    height:300px;
    aspect-ratio:1440/300;
  }
}

.bg-fixed__inner{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  clip-path:inset(0);
}

.bg-fixed__img{
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:100vh;
  aspect-ratio:1440/200;
}
@media screen and (min-width: 768px){
  .bg-fixed__img{
    aspect-ratio:1440/300;
  }
}
.bg-fixed__img{
  z-index:-1;
  object-fit:cover;
}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}