@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:"Caveat";
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url("./caveat-latin-400-normal-C8CMxIpV.woff2") format("woff2");
}
@font-face{
  font-family:"Caveat";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("./caveat-latin-700-normal-BuHFZref.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:italic;
  font-weight:400;
  font-display:swap;
  src:url("./inter-latin-400-italic-SydX4kbA.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url("./inter-latin-400-normal-D5ZSjyUI.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("./inter-latin-700-normal-DGoWfUMd.woff2") format("woff2");
}
@font-face{
  font-family:"Montserrat";
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url("./montserrat-latin-400-normal-YMv_Qj0W.woff2") format("woff2");
}
@font-face{
  font-family:"Montserrat";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("./montserrat-latin-700-normal-BXHHMxTG.woff2") format("woff2");
}
@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");
}
.header{
  width:100%;
  max-width:1680px;
  padding:12px 16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-shrink:0;
  position:fixed;
  top:0;
  z-index:8;
  background-color:#FFFFFF;
}
@media screen and (min-width: 1280px){
  .header{
    padding:0;
    top:-100%;
    left:auto;
    background-color:transparent;
  }
}
.header{
  transition:top 1s ease-in-out;
}
.header.is-view{
  top:0;
}
.header.is-resizing{
  transition:none !important;
}
.header-logo{
  width:auto;
  height:auto;
}

.header-link{
  width:auto;
  height:auto;
}
@media screen and (min-width: 1280px){
  .header-link{
    height:64px;
    padding:0 24px;
    display:grid;
    place-items:center;
    border-radius:0 0 24px 24px;
    background-color:#FFFFFF;
    box-shadow:0 0 4px 0 rgba(0, 0, 0, 0.24);
  }
}
.header-link{
  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%;
  background-color:#FFFFFF;
  transition:left 0.2s ease-in-out;
}
.header-nav__container.is-open{
  left:0;
}
@media screen and (min-width: 1280px){
  .header-nav__container{
    position:static;
    height:64px;
    padding:0 24px;
    flex-direction:row;
    align-items:center;
    gap:32px;
    border-radius:0 0 24px 24px;
    box-shadow:0 0 4px 0 rgba(0, 0, 0, 0.24);
  }
}
.header-nav__list{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
@media screen and (min-width: 1280px){
  .header-nav__list{
    flex-direction:row;
    align-items:center;
    gap:32px;
  }
}

.header-nav__item{
  width:auto;
  height:auto;
}
.header-nav__item:first-of-type .header-nav__link{
  border-top:1px solid #D4D4D4;
}
@media screen and (min-width: 1280px){
  .header-nav__item:first-of-type .header-nav__link{
    border-top:none;
  }
}
.header-nav__link{
  width:100%;
  padding:16px;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid #D4D4D4;
  transition:background-color 0.3s, color 0.3s;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}
@media (hover: hover){
  .header-nav__link:hover{
    background-color:#D3EF9F;
  }
}
@media screen and (hover: hover) and (min-width: 1280px){
  .header-nav__link:hover{
    color:#00A040;
    background-color:transparent;
  }
}
@media screen and (min-width: 1280px){
  .header-nav__link{
    padding:0;
    border-bottom:none;
  }
}
.header-nav__icon{
  width:40px;
  height:40px;
  display:grid;
  place-content:center;
}
@media screen and (min-width: 1280px){
  .header-nav__icon{
    display:none;
  }
}
.header-nav__icon .icon-arrow{
  width:24px;
  height:24px;
}
.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: 1280px){
  .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;
}
.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;
  }
}
.caveat{
  font-family:"Caveat", cursive;
}

.inter{
  font-family:"Inter", sans-serif;
}

.inter-italic{
  font-family:"Inter", sans-serif;
  font-style:italic;
}

.montserrat{
  font-family:"Montserrat", sans-serif;
}
.kv{
  width:100%;
  height:auto;
  position:relative;
  z-index:7;
  overflow-x:hidden;
  background-image:url("../img/background/bg-mottle-pattern.webp");
  background-size:80px 80px;
  background-position:top left;
  background-repeat:repeat;
}
@media screen and (min-width: 1024px){
  .kv{
    display:flex;
    justify-content:end;
    padding-bottom:120px;
  }
}
.section{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  position:relative;
}
.section.white-pattern{
  background-color:#FFFFFF;
}
.section{
}
.section.beige-pattern{
  background-color:#F9F1E2;
}
.section{
}
.section.green-pattern{
  background-image:url("../img/background/bg-mottle-pattern.webp");
  background-size:80px 80px;
  background-position:top left;
  background-repeat:repeat;
}
.section{
}
.section.benefits{
  z-index:6;
}
.section.contract{
  z-index:5;
}
.section.products{
  z-index:4;
}
.section.search{
  z-index:3;
}
.section.merit{
  z-index:2;
}
.section.youtube{
  z-index:1;
}
.section__inner{
  width:100%;
  max-width:1140px;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.section__inner.benefits{
  padding:48px 4.266666667% 32px;
  gap:56px;
  background-color:#FFFFFF;
}
@media screen and (min-width: 1024px){
  .section__inner.benefits{
    padding:96px 4.266666667% 72px;
  }
}
@media screen and (min-width: 1280px){
  .section__inner.benefits{
    padding:96px 0 72px 0;
  }
}
.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:48px 4.266666667% 32px;
  gap:24px;
}
@media screen and (min-width: 768px){
  .section__inner.search{
    padding:72px 4.266666667%;
    gap:48px;
  }
}
@media screen and (min-width: 1280px){
  .section__inner.search{
    padding:72px 0;
  }
}
.section__inner.merit, .section__inner.youtube{
  padding:48px 4.266666667% 32px;
  gap:24px;
}
@media screen and (min-width: 768px){
  .section__inner.merit, .section__inner.youtube{
    padding:72px 4.266666667%;
    gap:48px;
  }
}
@media screen and (min-width: 1280px){
  .section__inner.merit, .section__inner.youtube{
    padding:72px 0;
  }
}
.section__inner.products{
  padding:72px 4.266666667% 24px;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .section__inner.products{
    padding:128px 0 72px;
    gap:48px;
  }
}
.curve{
  width:100%;
  height:auto;
  position:absolute;
  left:0;
  top:-2px;
  z-index:1;
}
.curve img{
  width:100%;
  object-fit:cover;
}
.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;
  }
}
.footer{
  width:100%;
  padding:48px 0 104px;
  position:relative;
}
.footer::after{
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:104px;
  aspect-ratio:471/101;
  background-image:url("../img/background/footer-bg.svg");
  background-repeat:repeat-x;
  background-size:contain;
  background-position:bottom center;
}
@media screen and (min-width: 1280px){
  .footer{
    padding:96px 0 104px;
  }
}
.footer__inner{
  width:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:40px;
}
@media screen and (min-width: 1280px){
  .footer__inner{
    gap:32px;
  }
}
.copyright{
  width:fit-content;
  color:#00A040;
  font-feature-settings:"halt" on;
  font-size:10px;
  font-style:normal;
  font-weight:400;
  line-height:200%;
  letter-spacing:0.05em;
}
.btn-search,
.btn-search{
  width:192px;
  height:48px;
  padding-left:12px;
  display:flex;
  flex-direction:row-reverse;
  align-items:center;
  border:1px solid #FFFFFF;
  background-color:#00A040;
  border-radius:24px;
  transition:background-color 0.3s;
}
@media (hover: hover){
  .btn-search:hover,
  .btn-search:hover{
    background-color:#38684B;
  }
}

@media screen and (min-width: 768px){
  .merit .btn-search{
    width:288px;
    height:64px;
    padding-left:24px;
    border-radius:32px;
  }
}

.btn-search__text{
  width:156px;
  color:#FFFFFF;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}

@media screen and (min-width: 768px){
  .merit .btn-search__text{
    width:240px;
    font-size:20px;
    letter-spacing:1px;
  }
}
@media screen and (min-width: 768px){
  .section__cta .btn-search{
    width:288px;
    height:64px;
    padding-left:24px;
    border-radius:32px;
  }
}
@media screen and (min-width: 768px){
  .section__cta .btn-search__text{
    width:100%;
    font-size:20px;
  }
}
.btn-search__icon{
  width:24px;
  height:24px;
  color:#FFFFFF;
}
.floating-button{
  width:343px;
  padding:0;
  display:flex;
  flex-direction:column;
  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.3s, visibility 0.3s;
  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%);
  }
}
.floating-button__container{
  width:100%;
  height:auto;
  padding:8px 0 4px 0;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:16px;
  color:#FFFFFF;
  background:linear-gradient(180deg, #F6A432 40.38%, #E0870B 100%);
  border-radius:10px 10px 0 0;
  border-top:2px solid #E88C0B;
  border-right:2px solid #E88C0B;
  border-left:2px solid #E88C0B;
}

.floating-button__gift{
  font-feature-settings:"halt" on;
  font-size:18px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
  padding-bottom:8px;
  border-bottom:1px solid #FFFFFF;
}
.floating-button__text-container{
  width:auto;
  padding-bottom:4px;
  display:flex;
  align-items:center;
  gap:4px;
}

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

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

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

.floating-button__footer{
  width:100%;
  padding:8px 0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#E88C0B;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  background-color:#FEEDD6;
  border-right:2px solid #E88C0B;
  border-left:2px solid #E88C0B;
}
.search-more{
  width:100%;
  max-width:164.5px;
  padding:12px 0 12px 16px;
  display:flex;
  flex-direction:row;
  align-items:center;
  color:#333333;
  border-radius:32px;
  background:#FFFFFF;
  border:1px solid #333333;
  position:absolute;
  bottom:0;
  z-index:2;
  cursor:pointer;
  transition:background-color 0.3s;
}
@media screen and (min-width: 768px){
  .search-more{
    max-width:280px;
  }
}
@media (hover: hover){
  .search-more:hover{
    background-color:#D4D4D4;
  }
}
.search-more__text{
  width:100%;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 768px){
  .search-more__text{
    font-size:14px;
  }
}
.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:64px;
  }
}

.page-top__text{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-weight:700;
  line-height:100%;
}
.page-top__container{
  width:40px;
  height:40px;
  display:grid;
  place-content:center;
  background-color:#D4D4D4;
  border-radius:50%;
}
@media screen and (min-width: 1024px){
  .page-top__container{
    width:64px;
    height:64px;
  }
}
.section-heading{
  width:fit-content;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
.section-heading.white .section-heading__title{
  color:#FFFFFF;
}
.section-heading.white .section-heading__text{
  color:#FFFFFF;
}
.section-heading.white .section-heading__text::before, .section-heading.white .section-heading__text::after{
  background-color:#FFFFFF;
}
.section-heading__title{
  color:#38684B;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:32px;
  font-style:normal;
  font-weight:700;
  line-height:120%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1280px){
  .section-heading__title{
    font-size:40px;
  }
}
.section-heading__text{
  width:100%;
  white-space:nowrap;
  position:relative;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:24px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  text-align:center;
}
@media screen and (min-width: 1024px){
  .section-heading__text{
    font-size:20px;
  }
}
.section-heading__text::before, .section-heading__text::after{
  content:"";
  width:100%;
  height:1px;
  background-color:#333333;
  display:flex;
}
.kv__inner{
  width:100%;
  height:auto;
  padding:0;
}
@media screen and (min-width: 1024px){
  .kv__inner{
    display:flex;
    align-items:stretch;
    justify-content:end;
    gap:16px;
  }
}

.kv-contents{
  width:100%;
  padding:32px 0 24px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .kv-contents{
    max-width:1389px;
    max-height:960px;
    min-height:960px;
    padding:0 0 0 40px;
    position:relative;
    background-image:url("../img/kv/main-kv.webp");
    background-repeat:no-repeat;
    background-size:cover;
    background-position:left top;
    display:flex;
    flex-direction:column-reverse;
    align-items:stretch;
    overflow:hidden;
    position:relative;
    z-index:0;
    margin-left:40px;
  }
}
@media screen and (min-width: 1920px){
  .kv-contents{
    margin-left:0;
  }
}
@media screen and (min-width: 1921px){
  .kv-contents{
    max-width:100%;
    margin-left:80px;
  }
}
.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;
}

.main-visual-bg-right-bottom-02{
  width:fit-content;
  position:absolute;
  right:0;
  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-sub-copy__heading{
  width:fit-content;
  height:64px;
  display:flex;
  align-items:center;
}
.kv-sub-copy__heading-icon-container{
  width:fit-content;
  padding:0 16px;
  height:64px;
  display:grid;
  place-items:center;
  background-color:#FFFFFF;
  border-radius:0 0 0 24px;
}
@media screen and (min-width: 1440px){
  .kv-sub-copy__heading-icon-container{
    padding:0 24px;
  }
}
.kv-sub-copy__body{
  width:100%;
  max-width:294px;
  padding:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  position:absolute;
  top:578px;
  left:50%;
  transform:translateX(-50%);
  z-index:10;
  color:#FFFFFF;
  border-radius:16px 16px 0 0;
}
@media screen and (min-width: 1024px){
  .kv-sub-copy__body.sp{
    display:none;
    visibility:hidden;
  }
}
@media screen and (min-width: 1024px){
  .kv-sub-copy__body.pc{
    position:static;
    left:auto;
    top:auto;
    transform:none;
    transition:filter 0.3s ease;
  }
}
@media screen and (min-width: 1024px) and (hover: hover){
  .kv-sub-copy__body.pc:hover{
    filter:drop-shadow(0 0 8px #e88c0b);
  }
}
.kv-sub-copy__body-container{
  width:100%;
  height:auto;
  padding:16px 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:20px;
  color:#FFFFFF;
  background:linear-gradient(180deg, #F6A432 40.38%, #E0870B 100%);
  border-radius:16px 16px 0 0;
  border-top:2px solid #E88C0B;
  border-right:2px solid #E88C0B;
  border-left:2px solid #E88C0B;
}

.kv-sub-copy__body-gift{
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
  text-decoration-line:underline;
  text-decoration-style:solid;
  text-decoration-skip-ink:none;
  text-decoration-thickness:auto;
  text-underline-offset:40%;
  text-underline-position:from-font;
}
.kv-sub-copy__body-text-container{
  width:auto;
  padding-bottom:4px;
  display:flex;
  align-items:center;
  gap:4px;
}

.kv-sub-copy__body-max-text{
  writing-mode:vertical-rl;
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:700;
  line-height:110%;
}
.kv-sub-copy__body-text-inner{
  width:auto;
  display:flex;
  align-items:end;
}

.kv-sub-copy__body-price{
  font-feature-settings:"halt" on;
  font-size:56px;
  font-weight:700;
  line-height:100%;
}

.kv-sub-copy__body-text{
  font-feature-settings:"halt" on;
  font-size:24px;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
  padding-bottom:9px;
}

.kv-sub-copy__body-footer{
  width:100%;
  padding:8px 0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#E88C0B;
  font-feature-settings:"halt" on;
  font-size:17px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  background-color:#FEEDD6;
  border-radius:0 0 16px 16px;
  border-right:2px solid #E88C0B;
  border-left:2px solid #E88C0B;
  border-bottom:2px solid #E88C0B;
}
.kv-attention{
  width:fit-content;
  margin:0 auto;
  text-align:center;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:130%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1024px){
  .kv-attention{
    text-align:left;
    position:absolute;
    right:0;
    top:0;
    margin:0;
    padding:4px 8px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:0 0 0 4px;
    background:rgba(255, 255, 255, 0.9);
  }
}
.kv-side{
  display:none;
  visibility:hidden;
}
@media screen and (min-width: 1280px){
  .kv-side{
    visibility:visible;
    width:30vw;
    max-width:435px;
    height:100%;
    visibility:visible;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:16px;
  }
}
.kv-side__heading{
  width:100%;
  padding:24px 16px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  border-radius:0 0 0 24px;
  background-color:#FFFFFF;
}
@media screen and (min-width: 1440px){
  .kv-side__heading{
    flex-direction:row;
    justify-content:space-between;
  }
}
.kv-side__heading span{
  display:flex;
  font-feature-settings:"halt" on;
  background:linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 79%, rgb(250, 255, 51) 81%, rgb(250, 255, 51) 100%);
}
@media screen and (min-width: 1024px){
  .kv-side__heading span{
    font-feature-settings:"halt" on;
    font-size:24px;
    font-style:normal;
    font-weight:700;
    line-height:100%;
    letter-spacing:0.05em;
  }
}
@media screen and (min-width: 1280px){
  .kv-side__heading span{
    font-size:24px;
  }
}
@media screen and (min-width: 1440px){
  .kv-side__heading span{
    font-size:20px;
  }
}
@media screen and (min-width: 1760px){
  .kv-side__heading span{
    font-size:24px;
  }
}
@media screen and (min-width: 1920px){
  .kv-side__heading span{
    font-size:30px;
  }
}
.kv-side__icon{
  width:100%;
  height:auto;
}
@media screen and (min-width: 1280px){
  .kv-side__icon{
    max-width:180px;
  }
}
@media screen and (min-width: 1440px){
  .kv-side__icon{
    max-width:160px;
  }
}
@media screen and (min-width: 1760px){
  .kv-side__icon{
    max-width:212px;
  }
}
.kv-side-list{
  width:100%;
  padding-right:16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  flex:1;
}
.kv-side-item{
  width:100%;
  height:auto;
}
@media screen and (min-width: 768px){
  .kv-side-item{
    max-width:296px;
  }
}
.kv-side-item{
  width:100%;
  max-width:419px;
  height:100%;
  padding:8px;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border-radius:24px;
}
.kv-side-item.pink{
  background-color:#FCE9EF;
}
.kv-side-item.blue{
  background-color:#E8F5FD;
}
.kv-side-item.green{
  background-color:#E8FDF0;
}
.kv-side-item__inner{
  width:fit-content;
  height:100%;
  padding:0 8px;
  display:flex;
  flex-direction:row-reverse;
  align-items:center;
  gap:16px;
}
@media screen and (min-width: 1580px){
  .kv-side-item__inner{
    padding:0 24px;
  }
}
.kv-side-item__inner.pink{
  border-radius:16px;
  border:1px dashed #E75A85;
}
.kv-side-item__inner.blue{
  border-radius:16px;
  border:1px dashed #0B318F;
}
.kv-side-item__inner.green{
  border-radius:16px;
  border:1px dashed #38684B;
}
.kv-side-item__contents{
  width:100%;
  padding:16px 0;
  max-width:155px;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:12px;
}

.kv-side-item__product{
  width:fit-content;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:4px;
}
.product__item{
  width:100%;
  display:flex;
  justify-content:stretch;
  align-items:center;
  gap:8px;
  text-align:center;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:120%;
}
@media screen and (min-width: 1440px){
  .product__item{
    font-size:16px;
  }
}
.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){
  .product__item .contract-or{
    width:32px;
    height:32px;
    font-size:14px;
  }
}
.product__item > span{
  display:flex;
  align-items:center;
  gap:4px;
}
.product__item .gas{
  width:fit-content;
}

.kv-side-item__desc{
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
}
.kv-side-item__label{
  width:fit-content;
  height:48px;
  padding:4px 8px 4px 16px;
  position:absolute;
  top:0;
  left:0;
  display:flex;
  align-items:end;
  border-radius:24px 0 0 0;
  clip-path:polygon(0% 0%, 100% 0%, 96% 50%, 100% 100%, 0% 100%);
  color:#FFFFFF;
}
@media screen and (min-width: 1440px){
  .kv-side-item__label{
    padding:4px 18px 4px 24px;
  }
}
.kv-side-item__label{
}
.kv-side-item__label.pink{
  background-color:#E75A85;
}
.kv-side-item__label.blue{
  background-color:#0B318F;
}
.kv-side-item__label.green{
  background-color:#38684B;
}

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

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

.label-text-max{
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  writing-mode:vertical-rl;
  padding-bottom:4px;
}

.label-text-price{
  font-size:32px;
  font-weight:700;
  line-height:100%;
}

.label-text-unit{
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
  padding-bottom:4px;
}
.kv-side-item__img{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  position:relative;
}
.kv-side-item__img img{
  aspect-ratio:1/1;
}

.kv-side-item__note{
  width:fit-content;
  font-size:10px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1580px){
  .kv-side-item__note{
    font-size:11px;
  }
}
.scrolldown{
  display:none;
  visibility:hidden;
}
@media screen and (min-width: 1024px){
  .scrolldown{
    width:24px !important;
    height:auto;
    visibility:visible;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:16px;
    position:absolute;
    bottom:0;
    left:16px;
  }
}
@media screen and (min-width: 1920px){
  .scrolldown{
    left:24px;
  }
}
.scrolldown__text{
  color:#38684B;
  font-feature-settings:"halt" on;
  font-family:Montserrat;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.05em;
  white-space:nowrap;
  transform:rotate(-90deg);
  display:inline-block;
  position:relative;
  top:-32px;
}
.scrolldown__icon{
  width:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
}
.scrolldown__icon .scrolldown__svg{
  animation:scrolldownIcon 2s infinite;
  opacity:1;
}

.scrolldown__line{
  width:1px;
  height:107px;
  background-color:transparent;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.scrolldown__line::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color:#38684B;
  animation:scrolldownLine 2s infinite;
  transform:scaleY(0);
}

@keyframes scrolldownIcon{
  0%{
    transform:scale(0);
  }
  10%{
    transform:scale(0);
  }
  20%{
    transform:scale(1);
  }
  50%{
    transform:scale(1);
  }
  55%{
    transform:scale(0);
  }
  100%{
    transform:scale(0);
  }
}
@keyframes scrolldownLine{
  0%{
    transform:scaleY(0);
    transform-origin:top;
  }
  20%{
    transform:scaleY(0);
    transform-origin:top;
  }
  50%{
    transform:scaleY(1);
    transform-origin:top;
  }
  51%{
    transform:scaleY(1);
    transform-origin:bottom;
  }
  80%{
    transform:scaleY(0);
    transform-origin:bottom;
  }
  100%{
    transform:scaleY(0);
    transform-origin:bottom;
  }
}
.leaf-kv-left-sp-01{
  width:33.86666667vw;
  max-width:127px;
  height:auto;
  position:absolute;
  left:-45px;
  top:159px;
}
@media screen and (min-width: 1024px){
  .leaf-kv-left-sp-01{
    display:none;
    visibility:hidden;
  }
}

.leaf-kv-right-sp-01{
  width:33.86666667vw;
  max-width:127px;
  height:auto;
  position:absolute;
  right:-30px;
  top:34px;
}
@media screen and (min-width: 1024px){
  .leaf-kv-right-sp-01{
    display:none;
    visibility:hidden;
  }
}
.leaf-kv-inner-left-pc-01{
  display:none;
  visibility:hidden;
}

.leaf-kv-inner-left-pc-02{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-kv-inner-left-pc-02{
    display:block;
    position:absolute;
    bottom:-28px;
    left:309px;
    z-index:-1;
  }
}

.leaf-kv-inner-right-pc-01{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-kv-inner-right-pc-01{
    display:block;
    position:absolute;
    right:-47px;
    bottom:-36px;
  }
}

.leaf-kv-left-pc-01{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-kv-left-pc-01{
    display:block;
    position:absolute;
    top:387px;
    left:-80px;
  }
}
.kv-attention-kanta{
  display:none;
  visibility:hidden;
}
@media screen and (min-width: 1280px){
  .kv-attention-kanta{
    width:fit-content;
    color:#333333;
    position:absolute;
    bottom:96px;
    right:16px;
    visibility:visible;
    display:flex;
    font-feature-settings:"halt" on;
    font-size:12px;
    font-weight:400;
    line-height:100%;
    letter-spacing:0.05em;
  }
}
.bonus-container{
  width:auto;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .bonus-container{
    flex-direction:row;
  }
}
@media screen and (min-width: 1024px){
  .bonus-container:first-child{
    width:100%;
    flex-direction:row;
    align-items:start;
    justify-content:start;
    gap:40px;
  }
}
@media screen and (min-width: 1024px){
  .bonus-container:last-child{
    width:100%;
    flex-direction:row;
    align-items:stretch;
    justify-content:center;
    gap:24px;
  }
}
.bouns-box{
  width:auto;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
@media screen and (min-width: 1024px){
  .bouns-box:first-child{
    width:fit-content;
    flex-direction:row;
    align-items:stretch;
    gap:40px;
  }
}
.bouns-box:last-child{
  max-width:537px;
}
@media screen and (min-width: 1024px){
  .bouns-box:last-child{
    align-items:stretch;
  }
}
.bouns-box__desc{
  text-align:center;
  font-size:20px;
  font-feature-settings:"half" on;
  font-style:normal;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1024px){
  .bouns-box__desc{
    text-align:left;
  }
}
.bouns-box__attention{
  font-size:14px;
  font-feature-settings:"half" on;
  font-style:normal;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.05em;
}
.bouns-number{
  width:72px;
  height:63px;
  aspect-ratio:8/7;
  position:absolute;
  left:-8px;
  top:15px;
}
@media screen and (min-width: 1024px){
  .bouns-number{
    position:static;
    width:112px;
    height:98px;
  }
}
.bouns-detail__heading{
  width:100%;
  height:auto;
  min-height:184px;
  padding-top:60px;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  color:#FFFFFF;
  background:var(--grad-1, linear-gradient(180deg, #F6A432 40.38%, #E0870B 100%));
  box-shadow:2px 2px 4px 0 rgba(0, 0, 0, 0.24);
  border-radius:24px;
}
.bouns-detail__title{
  font-feature-settings:"halt" on;
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:1px;
  text-decoration-line:underline;
  text-decoration-style:solid;
  text-decoration-skip-ink:none;
  text-decoration-thickness:auto;
  text-underline-offset:40%;
  text-underline-position:from-font;
}
.bouns-detail__text{
  width:fit-content;
  padding-bottom:4px;
  display:flex;
  align-items:center;
  gap:4px;
}

.bouns-detail__text__max{
  writing-mode:vertical-rl;
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:700;
  line-height:110%;
}
.bouns-detail__text-container{
  width:fit-content;
  display:flex;
  align-items:end;
}

.bouns-detail__text__price{
  font-feature-settings:"halt" on;
  font-size:64px;
  font-weight:700;
  line-height:100%;
}

.bouns-detail__text__yen{
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
  padding-bottom:10px;
}
.bouns-detail__ribon{
  width:280px;
  height:88px;
  aspect-ratio:35/11;
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:-34px;
}
.bouns-notes{
  width:100%;
  padding:16px 0;
  border-radius:var(--curve-s, 24px);
  background:rgba(249, 241, 226, 0.6);
}

.bouns-notes__inner{
  width:fit-content;
  height:auto;
  padding:0 16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch;
}
.bouns-notes__inner::-webkit-scrollbar{
  display:block;
  width:8px;
  -webkit-appearance:none;
}
.bouns-notes__inner{
}
.bouns-notes__inner::-webkit-scrollbar-thumb{
  background-color:rgb(102, 102, 102);
  border-radius:10px;
  border:2px solid #ffffff;
}
@media screen and (min-width: 1024px){
  .bouns-notes__inner{
    width:100%;
    padding-left:16px;
    padding-right:0;
  }
}
.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;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.05em;
}
.bouns-notes__item::before{
  content:"・";
  padding-right:7px;
}
.leaf-left-pc{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-left-pc{
    display:block;
    width:13.47vw;
    height:auto;
    position:absolute;
    left:-41px;
    top:-62px;
  }
}
@media screen and (min-width: 1440px){
  .leaf-left-pc{
    width:301.786px;
    height:385.803px;
  }
}

.leaf-left-sp{
  width:104.157px;
  height:96.728px;
  position:absolute;
  left:-14.157px;
  top:-33px;
  z-index:0;
}
@media screen and (min-width: 1024px){
  .leaf-left-sp{
    display:none;
  }
}

.leaf-right-pc{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-right-pc{
    display:block;
    width:10vw;
    height:auto;
    position:absolute;
    right:-43.699px;
    top:-37px;
  }
}
@media screen and (min-width: 1440px){
  .leaf-right-pc{
    width:241.699px;
    height:402.542px;
  }
}

.leaf-right-sp{
  width:76.641px;
  height:102.115px;
  position:absolute;
  right:-19.604px;
  top:-9px;
  z-index:0;
}
@media screen and (min-width: 1024px){
  .leaf-right-sp{
    display:none;
  }
}
.contract-content{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:56px;
}
.contract-content__inner{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:24px;
}
@media screen and (min-width: 1024px){
  .contract-content__inner:first-child{
    flex-direction:row;
    align-items:start;
    justify-content:stretch;
    gap:40px;
  }
}
.contract-content__inner:last-child{
  position:relative;
}
.contract-box{
  width:100%;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
@media screen and (min-width: 1024px){
  .contract-box:first-child{
    width:fit-content;
    flex-direction:row;
    align-items:stretch;
    gap:40px;
  }
}
.contract-box:last-child{
  position:relative;
  max-width:537px;
}
@media screen and (min-width: 1024px){
  .contract-box:last-child{
    align-items:stretch;
    width:auto;
    max-width:100%;
  }
}
.contract-number{
  width:72px;
  height:63px;
  aspect-ratio:8/7;
  position:absolute;
  left:0;
  top:15px;
}
@media screen and (min-width: 1024px){
  .contract-number{
    position:static;
    width:112px;
    height:98px;
  }
}
.contract-box__desc{
  color:#38684B;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:20px;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.05em;
}

.contract-box__attention{
  color:#38684B;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1024px){
  .contract-box__attention{
    text-align:left;
  }
}
.contract-notes{
  width:100%;
  padding:16px 0;
  border-radius:var(--curve-s, 24px);
  background:rgba(249, 241, 226, 0.6);
}

.contract-notes__inner{
  width:fit-content;
  height:auto;
  padding:0 16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgb(102, 102, 102) transparent;
}
.contract-notes__inner::-webkit-scrollbar{
  display:block;
  width:8px;
  -webkit-appearance:none;
}
.contract-notes__inner{
}
.contract-notes__inner::-webkit-scrollbar-thumb{
  background-color:rgb(102, 102, 102);
  border-radius:10px;
  border:2px solid #ffffff;
}
@media screen and (min-width: 1024px){
  .contract-notes__inner{
    width:100%;
    padding-left:16px;
    padding-right:0;
  }
}
.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;
  font-feature-settings:"halt" on;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.05em;
}
.contract-notes__item::before{
  content:"・";
  padding-right:7px;
}
.contract-heading{
  position:absolute;
  top:-43px;
  left:50%;
  transform:translateX(-50%);
  z-index:2;
}
.contract-heading svg{
  width:152px;
  height:87px;
}
@media screen and (min-width: 1024px){
  .contract-heading svg{
    width:212px;
    height:120px;
  }
}
.contract-content__box{
  width:100%;
  padding:64px 16px 16px 16px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  background-color:#FFFFFF;
  border-radius:24px;
  visibility:visible !important;
}
@media screen and (min-width: 768px){
  .contract-content__box{
    padding:96px 0 40px 0;
  }
}

.contract-slider{
  width:100%;
  height:auto;
  display:flex;
  flex-direction:row;
  visibility:visible !important;
}
@media screen and (min-width: 1024px){
  .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: 1024px){
  .contract-slider__track{
    max-width:100%;
  }
}
.contract-slider__item{
  width:100%;
  height:auto;
  flex:1;
  display:flex;
}
@media screen and (min-width: 768px){
  .contract-slider__item{
    max-width:320px;
  }
}
.contract-container{
  width:max-content;
  height:auto;
  padding:8px;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border-radius:24px;
}
.contract-container.pink{
  background-color:#FCE9EF;
}
.contract-container.blue{
  background-color:#E8F5FD;
}
.contract-container.green{
  background-color:#E8FDF0;
}
.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%;
  padding:56px 24px 16px 24px;
  display:flex;
  flex-direction:row;
  align-items:stretch;
  gap:16px;
}
.contract-wrapper.pink{
  border-radius:16px;
  border:1px dashed #E75A85;
}
.contract-wrapper.green{
  border-radius:16px;
  border:1px dashed #38684B;
}
.contract-wrapper.blue{
  border-radius:16px;
  border:1px dashed #0B318F;
}

.product-container{
  display:flex;
  flex-direction:column;
  flex:1 0 auto;
  gap:16px;
}
.contract-container__content{
  width:fit-content;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
.contract-container__product{
  width:fit-content;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:4px;
}
.product__item{
  width:100%;
  display:flex;
  justify-content:stretch;
  align-items:center;
  gap:8px;
  text-align:center;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:120%;
}
@media screen and (min-width: 1440px){
  .product__item{
    font-size:16px;
  }
}
.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){
  .product__item .contract-or{
    width:32px;
    height:32px;
    font-size:14px;
  }
}
.product__item > span{
  display:flex;
  align-items:center;
  gap:4px;
}
.product__item .gas{
  width:fit-content;
}

.contract-container__desc{
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
}
.contract-label{
  width:fit-content;
  position:absolute;
  top:0;
  left:0;
  display:flex;
  align-items:center;
}
.contract-label{
  width:fit-content;
  height:48px;
  padding:4px 18px 4px 24px;
  display:flex;
  align-items:end;
  border-radius:24px 0 0 0;
  clip-path:polygon(0% 0%, 100% 0%, 96% 50%, 100% 100%, 0% 100%);
  color:#FFFFFF;
}
.contract-label.pink{
  background-color:#E75A85;
}
.contract-label.blue{
  background-color:#0B318F;
}
.contract-label.green{
  background-color:#38684B;
}

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

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

.label-text-max{
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  writing-mode:vertical-rl;
  padding-bottom:4px;
}

.label-text-price{
  font-size:32px;
  font-weight:700;
  line-height:100%;
}

.label-text-unit{
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
  padding-bottom:4px;
}
.contract-container__img{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}

.contract-slide-img{
  width:100%;
  max-width:184px;
  height:auto;
  aspect-ratio:1/1;
}

.contract-container__note{
  width:fit-content;
  font-size:12px;
  font-style:normal;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.05em;
}
.leaf-left-section-01-sp{
  width:104.157px;
  height:96.728px;
  position:absolute;
  left:-14.157px;
  top:-33px;
}
@media screen and (min-width: 768px){
  .leaf-left-section-01-sp{
    display:none;
  }
}

.leaf-right-section-01-sp{
  width:76.641px;
  height:102.115px;
  position:absolute;
  right:-19.604px;
  top:-9px;
}
@media screen and (min-width: 768px){
  .leaf-right-section-01-sp{
    display:none;
  }
}

.leaf-left-section-02-sp{
  width:41.679px;
  height:84.067px;
  position:absolute;
  left:-20.876px;
  top:256px;
}
@media screen and (min-width: 768px){
  .leaf-left-section-02-sp{
    display:none;
  }
}

.leaf-right-section-02-sp{
  width:59.356px;
  height:96.797px;
  position:absolute;
  right:-29.508px;
  top:241px;
}
@media screen and (min-width: 768px){
  .leaf-right-section-02-sp{
    display:none;
  }
}
.leaf-left-contract-pc{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-left-contract-pc{
    display:block;
    width:100px;
    height:auto;
    position:absolute;
    top:10px;
    left:-11px;
  }
}

.leaf-right-contract-pc{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-right-contract-pc{
    display:block;
    width:100px;
    height:auto;
    position:absolute;
    top:10px;
    right:-7px;
  }
}

.leaf-left-section-02-01-pc{
  display:none;
  position:absolute;
  left:-31px;
  top:-26px;
}
@media screen and (min-width: 1024px){
  .leaf-left-section-02-01-pc{
    display:block;
    width:12.08333333vw;
    max-width:232px;
    height:auto;
  }
}

.leaf-left-section-02-02-pc{
  display:none;
  position:absolute;
  left:-80px;
  top:480px;
}
@media screen and (min-width: 1024px){
  .leaf-left-section-02-02-pc{
    display:block;
    width:13.02083333vw;
    max-width:249px;
    height:auto;
  }
}

.leaf-right-section-02-01-pc{
  display:none;
  position:absolute;
  right:-31px;
  top:-26px;
}
@media screen and (min-width: 1024px){
  .leaf-right-section-02-01-pc{
    display:block;
    width:12.08333333vw;
    max-width:232px;
    height:auto;
  }
}

.leaf-right-section-02-02-pc{
  display:none;
  position:absolute;
  right:-80px;
  top:480px;
}
@media screen and (min-width: 1024px){
  .leaf-right-section-02-02-pc{
    display:block;
    width:13.02083333vw;
    max-width:249px;
    height:auto;
  }
}
.contract-kanta{
  margin-top:8px;
  font-feature-settings:"halt" on;
  font-size:10px;
  font-weight:400;
  line-height:100%;
  letter-spacing:0.05em;
}
.search-container{
  width:100%;
  display:flex;
  align-items:center;
  flex-direction:column;
  gap:24px;
  position:relative;
}
@media screen and (min-width: 1024px){
  .search-container{
    gap:40px;
  }
}
.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-list__title-large{
  font-size:32px;
  font-weight:500;
  line-height:80%;
  letter-spacing:0.05em;
}
.search-filter{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:24px;
}
.search-accordion-container{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
}
@media screen and (min-width: 1280px){
  .search-accordion-container{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
  }
}
.search-accordion{
  width:100%;
  padding:0;
  position:relative;
  display:flex;
  flex-direction:column-reverse;
  justify-content:start;
}
.search-accordion .search-accordion__body{
  opacity:0;
  visibility:hidden;
  display:none;
  transition:opacity 0.3s, visibility 0.3s;
}
.search-accordion{
}
.search-accordion.is-open .search-accordion__trigger-container{
  position:relative;
  z-index:2;
  border:none;
  border-top:1px solid #D4D4D4;
  border-left:1px solid #D4D4D4;
  border-right:1px solid #D4D4D4;
}
.search-accordion.is-open{
}
.search-accordion.is-open .search-accordion__body{
  opacity:1;
  visibility:visible;
  display:flex;
  padding:12px 0 0 0;
  position:relative;
  top:-2px;
  left:0px;
  background-color:#FFFFFF;
  z-index:1;
  border:1px solid #D4D4D4;
}
@media screen and (min-width: 1280px){
  .search-accordion.is-open{
  }
  .search-accordion.is-open .search-accordion__trigger-container{
    height:70px;
    position:relative;
    z-index:2;
    border:none;
    border-top:1px solid #D4D4D4;
    border-left:1px solid #D4D4D4;
    border-right:1px solid #D4D4D4;
  }
  .search-accordion.is-open{
  }
  .search-accordion.is-open .search-accordion__body{
    opacity:1;
    visibility:visible;
    display:flex;
    width:230%;
    max-width:1140px;
    padding:12px 0 0 0;
    position:relative;
    top:-2px;
    left:0px;
    background-color:#FFFFFF;
    z-index:1;
    border:1px solid #D4D4D4;
  }
  .search-accordion.is-open{
  }
  .search-accordion.is-open .search-accordion__inner{
    width:100%;
    flex-direction:row;
  }
}
.search-accordion{
}
@media screen and (min-width: 1280px){
  .search-accordion.right{
  }
  .search-accordion.right .search-accordion__body{
    left:-102%;
  }
}
.search-accordion__trigger-container{
  position:relative;
  z-index:2;
  background-color:#FFFFFF;
  border:1px solid #D4D4D4;
}

.search-accordion__trigger{
  width:100%;
  padding:0 16px;
  height:54px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
  transition:height 0.3s;
  color:#333333;
  background-color:#FFFFFF;
  transition:background-color 0.3s;
}
@media (hover: hover){
  .search-accordion__trigger:hover{
    background-color:#D3EF9F;
  }
}
.search-accordion__icon{
  color:#FFFFFF;
}
.search-accordion__icon.open{
  display:none;
}

.search-accordion.is-open .search-accordion__icon.close{
  display:none;
}
.search-accordion.is-open .search-accordion__icon.open{
  display:flex;
}
.search-accordion__inner{
  width:100%;
  padding-bottom:12px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
}
.search-subarea{
  width:auto;
  padding:0 16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
}
.search-subarea__title{
  width:fit-content;
  display:flex;
  align-items:center;
  gap:12px;
}
.search-location-list{
  width:100%;
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:8px;
}
.search-location-list li a{
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:200%;
  letter-spacing:0.05em;
  transition:opacity 0.3s;
}
@media (hover: hover){
  .search-location-list li a:hover{
    opacity:0.6;
  }
}
.search-benefits,
.search-benefits__list{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:14px;
}
@media screen and (min-width: 768px){
  .search-benefits__list{
    flex-direction:row;
  }
}
.search-benefit-item{
  display:flex;
  align-items:center;
  gap:12px;
  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;
}
.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:0 18px 0 8px;
  color:#FFFFFF;
  font-weight:700;
  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.pink,
.search-result-list__label-text.pink{
  background-color:#E75A85;
}
.search-benefit-item__content.blue,
.search-result-list__label-text.blue{
  background-color:#0B318F;
}
.search-benefit-item__content.green,
.search-result-list__label-text.green{
  background-color:#38684B;
}
.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-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}
.search-benefit-item__content .search-benefit-item__text,
.search-benefit-item__content .search-result-list__label-price-text,
.search-result-list__label-text .search-benefit-item__text,
.search-result-list__label-text .search-result-list__label-price-text{
  font-feature-settings:"halt" on;
  font-size:14px;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}

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

.search-result-list__label-price-text{
  padding-bottom:3px;
}
.search-box__result{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
}
@media screen and (min-width: 1024px){
  .search-box__result{
    gap:40px;
  }
}
.search-result-list{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:16px;
}
@media screen and (min-width: 768px){
  .search-result-list{
    display:grid;
    grid-template-columns:repeat(2, minmax(240px, 343px));
    justify-content:center;
  }
}
@media screen and (min-width: 1024px){
  .search-result-list{
    grid-template-columns:repeat(2, minmax(240px, 343px));
    gap:32px;
  }
}
@media screen and (min-width: 1280px){
  .search-result-list{
    grid-template-columns:repeat(3, minmax(280px, 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: 768px){
  .search-result-list__item{
    max-width:343px;
  }
}
@media screen and (min-width: 1024px){
  .search-result-list__item{
    max-width:368px;
  }
}
.search-result-list__inner{
  width:100%;
  position:relative;
  display:flex;
  flex-direction:column;
  background-color:#FFFFFF;
  border-radius:24px;
  box-shadow:0 0 4px 0 rgba(0, 0, 0, 0.24);
  transition:opacity 0.3s;
}
@media (hover: hover){
  .search-result-list__inner:hover{
    opacity:0.6;
  }
}
.search-result-list__img{
  width:100%;
  height:auto;
  aspect-ratio:3/2;
  border-radius:24px 24px 0 0;
}
.search-result-list__body{
  width:100%;
  padding:12px 16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
}
.search-result-list__title{
  width:auto;
}
.search-result-list__title-link{
  display:flex;
  color:#333333;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.05em;
}
.search-result-list__title-link::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  z-index:1;
}
.search-result-list__map-group{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
}
.search-result-list__map-item{
  width:100%;
  display:flex;
  align-items:center;
  gap:4px;
}
.search-result-list__map-text{
  font-feature-settings:"halt" on;
  font-size:12px;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.05em;
}
.search-result-list__desc{
  font-feature-settings:"halt" on;
  font-size:12px;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.05em;
}
.search-result-list__map-svg{
  color:#38684B;
}
.search-result-link__group{
  width:100%;
  display:flex;
  flex-direction:row;
  align-items:stretch;
  gap:12px;
}
.search-result-link__group a{
  width:50%;
  padding:12px 16px 12px 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-radius:24px;
  font-feature-settings:"halt" on;
  font-family:"Noto Sans JP";
  font-size:12px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}

.search-result-link__document{
  background-color:#F1F1F1;
  color:#333333;
}
.search-result-link__document .search-result-link__document-text{
  width:100%;
  text-align:center;
}
.search-result-link__document svg{
  color:#333333;
}
.search-result-link__document{
  transition:background-color 0.3s;
}
@media (hover: hover){
  .search-result-link__document:hover{
    background-color:#D4D4D4;
  }
}

.search-result-link__reservation{
  position:relative;
  z-index:1;
  overflow:hidden;
  background:linear-gradient(180deg, #F6A432 40.38%, #E0870B 100%);
}
.search-result-link__reservation .search-result-link__reservation-text{
  width:100%;
  text-align:center;
  color:#FFFFFF;
}
.search-result-link__reservation svg{
  color:#FFFFFF;
}
.search-result-link__reservation{
  transition:0.3s;
}
.search-result-link__reservation::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:linear-gradient(180deg, #F8BA63 40.38%, #F5A029 100%);
  z-index:-1;
  opacity:0;
  transition:opacity 0.3s;
}
@media (hover: hover){
  .search-result-link__reservation:hover::before{
    opacity:1;
  }
}
.search-blind{
  width:100%;
  height:227px;
  position:absolute;
  bottom:0;
  z-index:1;
  background:linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 45.67%, #FFF 92.31%);
}
.leaf-search-left-02-pc{
  display:none;
  position:absolute;
  left:-79px;
  top:952px;
}
@media screen and (min-width: 1024px){
  .leaf-search-left-02-pc{
    display:block;
    width:11.354vw;
    max-width:218px;
    height:auto;
  }
}

.leaf-search-right-02-pc{
  display:none;
  position:absolute;
  right:-64.646px;
  top:1236.657px;
}
@media screen and (min-width: 1024px){
  .leaf-search-right-02-pc{
    display:block;
    width:10.313vw;
    max-width:198px;
    height:auto;
  }
}
.merit-container{
  width:100%;
}
@media screen and (min-width: 768px){
  .merit-container{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:48px;
  }
}

.merit-container__text{
  display:none;
}
@media screen and (min-width: 768px){
  .merit-container__text{
    width:100%;
    max-width:736px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:24px;
    color:#38684B;
  }
}

.merit-container__text__exp{
  font-size:20px;
  font-style:normal;
  font-weight:700;
  line-height:200%;
  letter-spacing:1px;
}

.merit-container__text__note{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.7px;
}

.merit-container__card{
  display:contents;
}
@media screen and (min-width: 768px){
  .merit-container__card{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:40px;
  }
}

.merit-slider{
  display:flex !important;
  flex-direction:column;
  gap:16px;
  position:relative !important;
  margin-top:-16px;
  margin-left:-16px;
  cursor:pointer;
}
.merit-slider .splide__track{
  overflow:visible !important;
  padding-top:16px;
  padding-left:16px;
}
@media screen and (min-width: 768px){
  .merit-slider{
    margin:0;
    padding:0;
    cursor:default;
  }
}

@media screen and (min-width: 768px){
  .merit-card__list{
    width:100%;
    max-width:952px;
    display:grid !important;
    grid-template-columns:repeat(2, 1fr);
    gap:40px;
    transform:none !important;
  }
}

.merit-card__item.splide__slide{
  display:flex;
  flex-direction:column-reverse;
  width:100%;
  max-width:456px;
  min-height:406px;
}
@media screen and (min-width: 768px){
  .merit-card__item.splide__slide{
    width:100% !important;
  }
}

.merit-card__item__text{
  display:flex;
  padding:12px 16px;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  flex:1 0 0;
  align-self:stretch;
  border-radius:0 0 24px 24px;
  background-color:rgba(255, 255, 255, 0.9);
}

.merit-card__item__title{
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:170%;
  letter-spacing:0.7px;
  color:#333333;
}

.lineBreak__386{
  display:none;
}
@media screen and (min-width: 386px) and (max-width: 407px){
  .lineBreak__386{
    display:block;
  }
}

.merit-card__item__exp{
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:170%;
  letter-spacing:0.7px;
  color:#333333;
}

.merit-card__item__images{
  position:relative;
}

.merit-card__item__img{
  border-radius:24px 24px 0 0;
}

.merit-card__item__icon{
  width:10.7vw;
  height:10.7vw;
  max-width:60px;
  max-height:60px;
  position:absolute;
  top:-2.1vw;
  left:-2.1vw;
}
@media screen and (min-width: 768px){
  .merit-card__item__icon{
    width:64px;
    height:64px;
    top:-16px;
    left:-16px;
  }
}

.merit-slider .splide__pagination{
  order:2;
  position:static !important;
  display:flex !important;
  gap:12px;
}
.merit-slider .splide__pagination__page{
  background-color:#FFFFFF !important;
}
.merit-slider .splide__pagination__page.is-active{
  background-color:#595757 !important;
}
@media screen and (min-width: 768px){
  .merit-slider .splide__pagination{
    display:none !important;
  }
}

.merit-illust__list{
  display:none;
}
@media screen and (min-width: 768px){
  .merit-illust__list{
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:center;
    align-self:stretch;
    gap:40px;
    width:100%;
    padding-left:16px;
  }
}

.merit-illust__item{
  display:flex;
  flex-direction:row-reverse;
  align-items:stretch;
  justify-content:flex-end;
  width:100%;
  background-color:#EFF9FF;
  border-radius:24px;
}

.merit-illust__item__text{
  display:flex;
  padding:12px 16px;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  flex:1;
  border-radius:0 24px 24px 0;
  font-size:14px;
  font-style:normal;
  font-weight:700;
  line-height:170%;
  letter-spacing:0.7px;
  color:#333333;
}

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

.lineBreak__900{
  display:none;
}
@media screen and (min-width: 900px) and (max-width: 1049px){
  .lineBreak__900{
    display:block;
  }
}

.merit-illust__item__img{
  border-radius:24px 0 0 24px;
  width:22.2vw;
  max-width:228px;
  height:auto;
}
@media screen and (min-width: 1024px){
  .merit-illust__item__img{
    width:228px;
  }
}
.youtube-text{
  width:100%;
  max-width:736px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  color:#38684B;
  font-size:15px;
  font-style:normal;
  font-weight:700;
  line-height:200%;
  letter-spacing:0.75px;
}
@media screen and (min-width: 768px){
  .youtube-text{
    align-items:flex-start;
    text-align:left;
    font-size:20px;
    letter-spacing:1px;
  }
}

iframe{
  width:100%;
  aspect-ratio:343/193;
  border-radius:24px;
}
@media screen and (min-width: 768px){
  iframe{
    aspect-ratio:281/158;
    border-radius:40px;
  }
}

.youtube-title{
  font-size:15px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.75px;
  color:#38684B;
}
@media screen and (min-width: 768px){
  .youtube-title{
    font-size:32px;
    letter-spacing:1.6px;
  }
}
.leaf-youtube-left-01-sp{
  width:auto;
  position:absolute;
  left:-25.246px;
  top:-18px;
}
@media screen and (min-width: 1024px){
  .leaf-youtube-left-01-sp{
    display:none;
  }
}

.leaf-youtube-left-02-sp{
  width:auto;
  position:absolute;
  left:-19px;
  top:101px;
}
@media screen and (min-width: 1024px){
  .leaf-youtube-left-02-sp{
    display:none;
  }
}

.leaf-youtube-right-01-sp{
  width:74px;
  position:absolute;
  right:-16.804px;
  top:-5px;
}
@media screen and (min-width: 1024px){
  .leaf-youtube-right-01-sp{
    display:none;
  }
}

.leaf-youtube-right-02-sp{
  width:auto;
  position:absolute;
  right:-40.688px;
  top:107px;
}
@media screen and (min-width: 1024px){
  .leaf-youtube-right-02-sp{
    display:none;
  }
}
.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;
  }
}
.coordinate-title{
  color:#333333;
  text-align:center;
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}
@media screen and (min-width: 1024px){
  .coordinate-title{
    font-size:32px;
  }
}
.slider-container{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
@media screen and (min-width: 1024px){
  .slider-container{
    max-width:550px;
  }
}
@media screen and (min-width: 1024px){
  .slider-container.coordinate{
    max-width:369px;
  }
}
.slider-container__img{
  width:auto;
  height:auto;
}
.slider-container__img img{
  width:100%;
  height:auto;
  object-fit:cover;
  border-radius:24px 24px 0 0;
  aspect-ratio:16/9;
}
.slider-container__img.coordinate img{
  aspect-ratio:3/2;
  border-radius:24px;
}
.slider-container__content{
  width:100%;
  padding:12px 16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
  flex:1;
  background-color:rgba(255, 255, 255, 0.9);
  border-radius:0 0 24px 24px;
}
.slider-container__title{
  font-feature-settings:"halt" on;
  font-size:24px;
  font-style:normal;
  font-weight:700;
  line-height:100%;
  letter-spacing:0.05em;
}
.slider-container__desc1{
  font-feature-settings:"halt" on;
  font-size:14px;
  font-style:normal;
  font-weight:400;
  line-height:170%;
  letter-spacing:0.05em;
}
.slider-container__desc1 span{
  color:#00A040;
  font-feature-settings:"halt" on;
  font-size:16px;
  font-style:normal;
  font-weight:700;
  line-height:150%;
  letter-spacing:0.05em;
}
.slider-container__desc2{
  font-feature-settings:"halt" on;
  font-size:10px;
  font-style:normal;
  font-weight:400;
  line-height:150%;
  letter-spacing:0.05em;
}
.splide__arrow--prev,
.splide__arrow--next,
.swiper-button-prev,
.swiper-button-next{
  position:static !important;
  margin:0 !important;
  padding:0 !important;
}
.swiper-navigation-container{
  width:fit-content;
  position:relative;
  z-index:10;
  display:none;
}
@media screen and (min-width: 1024px){
  .swiper-navigation-container{
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
  }
}
@media screen and (min-width: 1024px){
  .swiper-navigation-container{
    right:0;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
  }
}
.swiper-navigation-container .splide__arrow,
.swiper-navigation-container .swiper-button-prev,
.swiper-navigation-container .swiper-button-next{
  display:none;
  color:#00A040;
  background-color:#FFFFFF;
  width:40px !important;
  height:40px !important;
  border-radius:50%;
  border:none;
  box-shadow:0 4px 10px rgba(0, 0, 0, 0.1);
  transition:all 0.3s ease;
  cursor:pointer;
}
@media screen and (min-width: 1024px){
  .swiper-navigation-container .splide__arrow,
  .swiper-navigation-container .swiper-button-prev,
  .swiper-navigation-container .swiper-button-next{
    display:flex;
    align-items:center;
    justify-content:center;
  }
}
.swiper-navigation-container .splide__arrow::before,
.swiper-navigation-container .swiper-button-prev::before,
.swiper-navigation-container .swiper-button-next::before{
  content:"";
  width:20px;
  height:20px;
  display:block;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.swiper-navigation-container .splide__arrow::after,
.swiper-navigation-container .swiper-button-prev::after,
.swiper-navigation-container .swiper-button-next::after{
  display:none !important;
}
.swiper-navigation-container .splide__arrow svg,
.swiper-navigation-container .swiper-button-prev svg,
.swiper-navigation-container .swiper-button-next svg{
  display:none !important;
}
.swiper-navigation-container .splide__arrows{
  display:none !important;
}

.splide__arrow--prev,
.swiper-button-prev{
  transition:background-color 0.3s;
}
.splide__arrow--prev::before,
.swiper-button-prev::before{
  background-image:url("../img/icons/slider-navi-prev-green.svg");
}
@media (hover: hover){
  .splide__arrow--prev:hover,
  .swiper-button-prev:hover{
    background-color:#00A040;
  }
  .splide__arrow--prev:hover::before,
  .swiper-button-prev:hover::before{
    background-image:url("../img/icons/slider-navi-prev-white.svg");
  }
}

.splide__arrow--next,
.swiper-button-next{
  transition:background-color 0.3s;
}
.splide__arrow--next::before,
.swiper-button-next::before{
  background-image:url("../img/icons/slider-navi-next-green.svg");
}
@media (hover: hover){
  .splide__arrow--next:hover,
  .swiper-button-next:hover{
    background-color:#00A040;
  }
  .splide__arrow--next:hover::before,
  .swiper-button-next:hover::before{
    background-image:url("../img/icons/slider-navi-next-white.svg");
  }
}
.products-slider,
.coordinate-slider{
  overflow:visible !important;
}
.leaf-right-section-03-01-sp{
  width:79.213px;
  height:69.786px;
  position:absolute;
  right:-13.213px;
  top:-13px;
  z-index:0;
}
@media screen and (min-width: 1024px){
  .leaf-right-section-03-01-sp{
    display:none;
    visibility:hidden;
  }
}

.leaf-left-section-03-01-pc{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-left-section-03-01-pc{
    display:block;
    width:292.786px;
    height:245.346px;
    position:absolute;
    left:-34.157px;
    top:-64px;
    z-index:0;
  }
}

.leaf-right-section-03-01-pc{
  display:none;
}
@media screen and (min-width: 1024px){
  .leaf-right-section-03-01-pc{
    display:block;
    width:236.563px;
    height:225.9px;
    position:absolute;
    right:-24.157px;
    top:-43px;
    z-index:0;
  }
}
[data-leaf-pos]{
  pointer-events:none;
  will-change:transform, opacity;
}.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}