@charset "UTF-8";
*{
  box-sizing:border-box;
}

::before,
::after{
  box-sizing:inherit;
}
html{
  line-height:1.15;
  -webkit-text-size-adjust:100%;
  -webkit-tap-highlight-color:transparent;
}
body{
  margin:0;
}
main{
  display:block;
}
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl{
  margin:0;
}
h1,
h2,
h3,
h4,
h5,
h6{
  font-size:inherit;
  line-height:inherit;
  font-weight:inherit;
  margin:0;
}
ul,
ol{
  margin:0;
  padding:0;
  list-style:none;
}
dt{
  font-weight:bold;
}

dd{
  margin-left:0;
}
hr{
  box-sizing:content-box;
  height:0;
  overflow:visible;
  border:0;
  border-top:1px solid;
  margin:0;
  clear:both;
  color:inherit;
}
pre{
  font-family:monospace, monospace;
  font-size:inherit;
}

address{
  font-style:inherit;
}
a{
  background-color:transparent;
  text-decoration:none;
  color:inherit;
}
abbr[title]{
  border-bottom:none;
  text-decoration:underline;
  -webkit-text-decoration:underline dotted;
          text-decoration:underline dotted;
}
b,
strong{
  font-weight:bolder;
}
code,
kbd,
samp{
  font-family:monospace, monospace;
  font-size:inherit;
}
small{
  font-size:80%;
}
sub,
sup{
  font-size:75%;
  line-height:0;
  position:relative;
  vertical-align:baseline;
}

sub{
  bottom:-0.25em;
}

sup{
  top:-0.5em;
}
img{
  border-style:none;
  vertical-align:bottom;
}

embed,
object,
iframe{
  border:0;
  vertical-align:bottom;
}
button,
input,
optgroup,
select,
textarea{
  -webkit-appearance:none;
  appearance:none;
  vertical-align:middle;
  color:inherit;
  font:inherit;
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  outline:0;
  border-radius:0;
  text-align:inherit;
}

[type=checkbox]{
  -webkit-appearance:checkbox;
  appearance:checkbox;
}

[type=radio]{
  -webkit-appearance:radio;
  appearance:radio;
}
button,
input{
  overflow:visible;
}
button,
select{
  text-transform:none;
}
button,
[type=button],
[type=reset],
[type=submit]{
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled]{
  cursor:default;
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner{
  border-style:none;
  padding:0;
}
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring{
  outline:1px dotted ButtonText;
}
option{
  padding:0;
}
fieldset{
  margin:0;
  padding:0;
  border:0;
  min-width:0;
}
legend{
  color:inherit;
  display:table;
  max-width:100%;
  padding:0;
  white-space:normal;
}
progress{
  vertical-align:baseline;
}
textarea{
  overflow:auto;
}
[type=checkbox],
[type=radio]{
  padding:0;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button{
  height:auto;
}
[type=search]{
  outline-offset:-2px;
}
[type=search]::-webkit-search-decoration{
  -webkit-appearance:none;
}
::-webkit-file-upload-button{
  -webkit-appearance:button;
  font:inherit;
}
label[for]{
  cursor:pointer;
}
details{
  display:block;
}
summary{
  display:list-item;
}
table{
  border-collapse:collapse;
  border-spacing:0;
}

caption{
  text-align:left;
}

td,
th{
  vertical-align:top;
  padding:0;
}

th{
  text-align:left;
  font-weight:bold;
}
template{
  display:none;
}
[hidden]{
  display:none;
}
html{
  scroll-behavior:smooth;
  font-size:min(1.3333333333vw, 10px);
}

body{
  color:#222;
  font-family:"Noto Sans JP", "ヒラギノ角ゴシック", "Hiragino Sans", "メイリオ", "Meiryo", sans-serif;
  line-height:1.6;
  letter-spacing:0.02em;
  -webkit-text-size-adjust:100%;
  background-color:#fff;
  font-weight:500;
  font-size:2.8rem;
}
body.--unscrollable{
  overflow:hidden;
}

.wrapper.--unscrollable{
  overflow:auto;
  scrollbar-gutter:stable;
}

:root{
  --black:#fff;
  --white:#222;
  --color-text:#222;
  --color-main:#8a148a;
  --color-main-deep:#3c183c;
  --color-primary:#F5551F;
  --color-primary-deep:#DE5121;
  --color-alert:#FFF03C;
  --color-alert-deep:#FFE51A;
}

img,
picture{
  width:100%;
  height:auto;
  vertical-align:bottom;
}

picture{
  display:block;
}

h1,
h2,
h3,
h4,
h5,
h6{
  font-weight:500;
  line-height:1.4;
  letter-spacing:0.03em;
}

*[lang=en]{
  font-family:"Arial", "Roboto", "Helvetica Neue", "Helvetica", sans-serif;
}

em{
  font-style:normal;
}

small{
  font-size:100%;
}
.l-container{
  margin-left:auto;
  margin-right:auto;
  max-width:750px;
}
.text-center{
  text-align:center !important;
}
.text-right{
  text-align:right;
}

.center{
  margin-left:auto;
  margin-right:auto;
}
.mincho{
  font-family:"游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  font-weight:600;
}

.shadow{
  box-shadow:3px 3px 6px 0px rgba(0, 0, 0, 0.15);
}

.video{
  position:relative;
  padding-bottom:56.25%;
  height:0;
  overflow:hidden;
  background-color:var(--main-light);
}
.video iframe{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
.text{
  text-align:justify;
  word-break:break-all;
  text-justify:inter-ideograph;
  text-justify:inter-character;
  word-wrap:break-word;
  overflow-wrap:break-word;
}

.text-shadow{
  text-shadow:1px 0 1px #a190c0, 1px 1px 1px #a190c0, 0 1px 1px #a190c0, -1px 1px 1px #a190c0, -1px 0 1px #a190c0, -1px -1px 1px #a190c0, 0 -1px 1px #a190c0, 1px -1px 1px #a190c0;
}

.color-main{
  color:var(--main-txt);
}
.color-primary{
  color:var(--primary-txt);
}
.color-yellow{
  color:var(--yellow);
}
.color-brown{
  color:var(--brown);
}

.text-strong{
  font-weight:500;
}

.fs-xs{
  font-size:1.6vw;
}

.fs-normal{
  font-size:2.1333333333vw;
}

.fs-lg{
  font-size:2.6666666667vw;
}

.fw-bold{
  font-weight:500;
}
.material-icons,
.material-icons-outlined,
.material-icons-round,
.material-icons-sharp{
  font-family:"Material Icons";
  font-weight:normal;
  font-style:normal;
  font-size:24px;
  display:inline-block;
  line-height:1;
  text-transform:none;
  letter-spacing:normal;
  word-wrap:normal;
  white-space:nowrap;
  direction:ltr;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  -moz-osx-font-smoothing:grayscale;
  font-feature-settings:"liga";
}
.btn{
  position:relative;
  text-align:center;
  display:flex;
  justify-content:center;
  align-items:center;
  transition:background-color 0.6s ease, opacity 0.6s ease;
  letter-spacing:0.05em;
  font-weight:bold;
  padding:0.5em 1em;
  font-size:3.2vw;
  border-radius:1.3333333333vw;
  min-height:9.3333333333vw;
}
.btn.--main{
  color:var(--color-text);
  background-color:var(--color-main);
}
.btn.--main-deep{
  color:var(--color-text-sub);
  background-color:var(--color-main-deep);
}
.btn.--outline{
  color:var(--color-text-sub);
  background-color:transparent;
  border:1px solid var(--color-border);
}

.reason__ttl{
  margin-bottom:8rem;
}
.reason__ttl picture{
  display:flex;
  justify-content:center;
}
.reason__ttl picture img{
  width:auto;
  height:10.3rem;
}
.reason__list > li:nth-child(1){
  padding:8rem 4rem 4rem;
  background-image:url("./../img/reason01_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
}
.reason__list > li:nth-child(2){
  padding:6rem 4rem 4rem;
  background-image:url("./../img/reason02_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  background-position:bottom center;
}
.reason__list > li:nth-child(3){
  padding:6rem 4rem 8rem;
  background-image:url("./../img/reason03_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  background-position:top center;
}
.reason-item{
  position:relative;
  border-radius:5.4rem;
  border:solid 0.2rem #fff;
  background-color:rgba(221, 190, 241, 0.75);
  border-radius:5.4rem;
  padding:8rem 4rem;
}
.reason-item::before{
  position:absolute;
  display:block;
  content:"";
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  width:10.6rem;
  height:7.7rem;
  top:0;
  left:50%;
  transform:translate(-50%, -55%);
  z-index:1;
}
.reason-item__txt{
  color:#fff;
  margin-top:4rem;
  text-shadow:0.05em 0 0.4em rgba(161, 144, 192, 0.4), 0.05em 0.05em 0.4em rgba(161, 144, 192, 0.4);
}
.reason-item__pic{
  margin-top:4rem;
}
.reason-item01{
  background-color:transparent;
  padding:0;
}
.reason-item01::before{
  background-image:url("./../img/reason01_num.webp");
}
.reason-item01__top{
  position:relative;
  border-radius:5.4rem 5.4rem 0 0;
  padding:8rem 7rem;
  background-color:rgba(192, 168, 244, 0.7);
}
.reason-item01__top::before{
  position:absolute;
  display:block;
  content:"";
  background-image:url("./../img/reason01_wave.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  width:100%;
  height:33.5rem;
  left:0;
  bottom:0;
}
.reason-item01__bottom{
  padding:4rem;
  background-color:rgba(221, 190, 241, 0.75);
  border-radius:0 0 5.4rem 5.4rem;
  border-top:solid 0.2rem #fff;
}
.reason-item01__bottles{
  margin-top:4rem;
  margin-left:50%;
  transform:translate(-50%);
  width:73rem;
}
.reason-item01__champ-ttl picture{
  display:flex;
  justify-content:center;
}
.reason-item01__champ-ttl picture img{
  width:38.5rem;
}
.reason-item01__champ-list{
  margin-top:4rem;
  display:flex;
  flex-direction:column;
  gap:2rem;
}
.reason-item02{
  background-color:rgba(192, 168, 244, 0.7);
}
.reason-item02::before{
  background-image:url("./../img/reason02_num.webp");
}
.reason-item03{
  background-color:rgba(192, 168, 244, 0.7);
}
.reason-item03::before{
  background-image:url("./../img/reason03_num.webp");
}
.reason-item03__lineup{
  margin-top:4rem;
  display:flex;
  flex-direction:column;
  gap:1.3rem;
}

.works{
  background-image:url("./../img/works_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  padding:8rem 0;
}
.works__ttl{
  margin-bottom:8rem;
}
.works__ttl picture{
  display:flex;
  justify-content:center;
}
.works__ttl picture img{
  width:auto;
  height:9.8rem;
}
.works__btn{
  display:flex;
  justify-content:center;
  margin-top:8rem;
}
.works__btn a{
  width:26.4rem;
}
.works .splide__arrow{
  background:transparent;
  border-radius:0;
  opacity:1;
  background-image:url("./../img/works_slider_arrow.webp");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  width:4rem;
  height:8.2rem;
}
.works .splide__arrow svg{
  display:none;
}
.works .splide__arrow--prev{
  left:14.5rem;
  transform:translate(-50%, -50%);
}
.works .splide__arrow--next{
  right:14.5rem;
  transform:translate(50%, -50%) rotate(180deg);
}

.cta{
  position:relative;
  background-image:url("./../img/cta_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  padding:8rem 4rem;
}
.cta-box{
  position:relative;
  border-radius:1rem;
  background-color:#fff;
  overflow:hidden;
  box-shadow:0.3rem 0.3rem 0.3rem rgba(223, 217, 199, 0.65);
  background:linear-gradient(180deg, #d8b479 0%, #f3dc95 40%, #f8eca6 60%, #d8b479 100%);
  padding:2px;
}
.cta-box__bg{
  position:relative;
  border-radius:0.9rem;
  background-color:#fff;
  overflow:hidden;
}
.cta-box__bg::before{
  position:absolute;
  display:block;
  content:"";
  background-image:url("./../img/cta_deco01.webp");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  width:10rem;
  height:14.3rem;
  top:10rem;
  left:-0.2rem;
  z-index:1;
}
.cta-box__inner{
  padding:3rem 9rem;
}
.cta-box__txt{
  color:#4c517c;
  text-align:center;
  white-space:nowrap;
}
.cta-box__txt strong{
  color:#ff007f;
}
.cta-box__btn{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin-top:3rem;
}
.cta-box__btn img{
  display:block;
}
.cta-box__btn-link{
  width:50.3rem;
}
.cta-box__fukidashi{
  margin-bottom:1rem;
}
.cta-box__fukidashi img{
  width:auto;
  height:2.3rem;
}
.cta::before{
  position:absolute;
  display:block;
  content:"";
  background-image:url("./../img/cta_deco02.webp");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  width:14.4rem;
  height:29.3rem;
  bottom:2.5rem;
  right:0.5rem;
  z-index:1;
}

.price{
  background-image:url("./../img/price_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  background-position:top center;
  padding:8rem 5.5rem;
}
.price__ttl{
  margin-bottom:6rem;
}
.price__ttl picture{
  display:flex;
  justify-content:center;
}
.price__ttl picture img{
  width:auto;
  height:9.8rem;
}
.price__balloon picture{
  display:flex;
  justify-content:center;
}
.price__balloon img{
  display:block;
  width:54.7rem;
  height:auto;
  transform:translateX(1.5rem);
}
.price__table{
  margin-top:6rem;
}

.order{
  background-image:url("./../img/order_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  background-position:top center;
  padding:8rem 3.5rem;
}
.order__ttl{
  margin-bottom:8rem;
}
.order__ttl picture{
  display:flex;
  justify-content:center;
}
.order__ttl picture img{
  width:auto;
  height:9.8rem;
}
.order__list{
  background-color:rgba(192, 168, 244, 0.2);
  border-radius:1.6rem;
  padding:7rem;
  display:flex;
  flex-direction:column;
  gap:2.2rem;
}
.order__list > li:first-child .order-item::before{
  display:none;
}
.order-item{
  position:relative;
  background-color:#fff;
  padding:4rem;
  border-radius:1rem;
  min-height:52rem;
}
.order-item::before{
  position:absolute;
  display:block;
  content:"";
  background-image:url("./../img/order_step_arrow.webp");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  width:10.8rem;
  height:3.2rem;
  top:0;
  left:50%;
  transform:translate(-50%, -85%);
  z-index:1;
}
.order-item__ttl{
  text-align:center;
  font-size:3.6rem;
  margin-bottom:2.5rem;
  color:#4c517c;
  letter-spacing:0.01em;
}
.order-item__txt{
  color:#4c517c;
}
.order-item__btn{
  display:flex;
  justify-content:center;
  margin-top:3rem;
}
.order-item__btn a{
  width:39.2rem;
}
.order-item__label{
  position:absolute;
  width:13.6rem;
  top:2.5rem;
  right:2.5rem;
}
.order-item01 .order-item__icon{
  margin-top:1.6rem;
  margin-bottom:3rem;
}
.order-item01 .order-item__icon picture{
  display:flex;
  justify-content:center;
}
.order-item01 .order-item__icon picture img{
  width:11.2rem;
}
.order-item02 .order-item__icon{
  margin-top:1rem;
  margin-bottom:4rem;
}
.order-item02 .order-item__icon picture{
  display:flex;
  justify-content:center;
}
.order-item02 .order-item__icon picture img{
  width:13.8rem;
  transform:translate(-1rem);
}
.order-item03 .order-item__icon{
  margin-top:4rem;
  margin-bottom:4rem;
}
.order-item03 .order-item__icon picture{
  display:flex;
  justify-content:center;
}
.order-item03 .order-item__icon picture img{
  width:12.1rem;
}
.order-item04 .order-item__icon{
  margin-top:1rem;
  margin-bottom:4rem;
}
.order-item04 .order-item__icon picture{
  display:flex;
  justify-content:center;
}
.order-item04 .order-item__icon picture img{
  width:13.8rem;
}
.order-item05 .order-item__icon{
  margin-top:3.5rem;
  margin-bottom:5rem;
}
.order-item05 .order-item__icon picture{
  display:flex;
  justify-content:center;
}
.order-item05 .order-item__icon picture img{
  width:19.5rem;
}

.voice{
  position:relative;
  background-image:url("./../img/voice_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  background-position:top center;
  padding:8rem 4rem 0;
}
.voice::after{
  display:block;
  content:"";
  background-image:url("./../img/voice_bottles.webp");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  aspect-ratio:1500/514;
  width:calc(100% + 8rem);
  margin-top:6.5rem;
  margin-left:-4rem;
}
.voice__ttl{
  margin-bottom:7rem;
}
.voice__ttl picture{
  display:flex;
  justify-content:center;
}
.voice__ttl picture img{
  width:auto;
  height:9.8rem;
}
.voice__list{
  display:flex;
  flex-direction:column;
  gap:3rem;
}
.voice-item{
  background:linear-gradient(-90deg, rgba(205, 188, 244, 0.7) 0%, rgba(167, 138, 230, 0.7) 100%);
  border-radius:1.6rem;
}
.voice-item__ttl{
  margin-top:3rem;
}
.voice-item__body{
  display:flex;
  align-items:center;
  padding:3rem 4rem 3rem;
  gap:3rem;
}
.voice-item__txt{
  color:#fff;
  flex-grow:1;
  flex-shrink:1;
  font-size:2rem;
  text-shadow:1px 0 5px rgba(161, 144, 192, 0.7), 1px 1px 5px rgba(161, 144, 192, 0.7);
}
.voice-item__pic{
  flex-grow:0;
  flex-shrink:0;
  width:30.8rem;
  margin-top:-2rem;
}
.voice-item:nth-child(2n-1) .voice-item__pic{
  margin-right:-8rem;
}
.voice-item:nth-child(2n) .voice-item__body{
  flex-direction:row-reverse;
}
.voice-item:nth-child(2n) .voice-item__pic{
  margin-left:-8rem;
}
.voice-item:first-child .voice-item__body{
  margin-top:-1rem;
}

.faq{
  background-image:url("./../img/faq_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  background-position:top center;
  padding:8rem 4rem;
}
.faq__ttl{
  margin-bottom:8rem;
}
.faq__ttl picture{
  display:flex;
  justify-content:center;
}
.faq__ttl picture img{
  width:auto;
  height:8.9rem;
}
.faq__list{
  display:flex;
  flex-direction:column;
  gap:3rem;
}
.faq-item{
  background-color:#fff;
  border-radius:1.6rem;
  border:solid 0.2rem #4c517c;
  overflow:hidden;
}
.faq-item__ques{
  color:#fff;
  background-color:#4c517c;
  padding:1.5rem 2rem;
  display:flex;
  align-items:center;
  gap:2rem;
}
.faq-item__ques::before{
  flex-grow:0;
  flex-shrink:0;
  display:block;
  content:"";
  aspect-ratio:1/1;
  width:4.8rem;
  background-image:url("./../img/faq_q.webp");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
}
.faq-item__ans{
  padding:1.5rem 2rem;
  color:#4c517c;
  font-size:2rem;
}
.faq-item:nth-child(2n){
  border:solid 0.2rem #6f77b7;
}
.faq-item:nth-child(2n) .faq-item__ques{
  background-color:#6f77b7;
}
.faq-item:nth-child(2n) .faq-item__ques::before{
  background-image:url("./../img/faq_q_light.webp");
}
.faq-item:nth-child(2n) .faq-item__ans{
  color:#6f77b7;
}
@media screen and (min-width: 562px) and (max-width: 750px){
  .sp-sm-only{
    display:none !important;
  }
}
@media screen and (min-width: 751px){
  a,
  button,
  input[type=submit]{
    transition:opacity 0.6s;
  }
  a:hover,
  button:hover,
  input[type=submit]:hover{
    opacity:0.7;
  }
  .sp-sm-only{
    display:none !important;
  }
  .sp-lg-only{
    display:none !important;
  }
  .sp-only{
    display:none !important;
  }
  .fs-xs{
    font-size:1.2rem;
  }
  .fs-normal{
    font-size:max(1.2rem, min(18px, 1.40625vw));
  }
  .fs-lg{
    font-size:min(30px, 2.34375vw);
  }
  .btn{
    font-size:1.6rem;
    border-radius:10px;
    min-height:50px;
  }
  .btn:hover{
    opacity:0.6;
  }
}
@media screen and (min-width: 1280px){
  .mb-only{
    display:none !important;
  }
  .tb-only{
    display:none !important;
  }
  .text-pc-center{
    text-align:center !important;
  }
}
@media screen and (max-width: 1279px){
  .pc-only{
    display:none !important;
  }
  .text-mb-center{
    text-align:center !important;
  }
}
@media screen and (max-width: 750px){
  .tb-only{
    display:none !important;
  }
  .wide-only{
    display:none !important;
  }
}
@media screen and (max-width: 561px){
  .sp-lg-only{
    display:none !important;
  }
  .sp-l-and-wide-only{
    display:none !important;
  }
}
