@charset "UTF-8";

.lp{padding-bottom: 0;}
.home-content.support-content{margin-block-start: 0;}

html {
  background: #E4E4E4;
}

/*******************************
UU250115heartboxer
*******************************/
#UU250115heartboxer{
  display: block;
  width: 100%;
  padding: 0 0 calc(160* (100vw / 750));
  background: #e2f0f1;
  box-sizing: border-box;
  font-family: var(--font-ja);
  font-weight: 400;
  font-style: normal;
  color: #555555;
  font-feature-settings: 'palt';
}

#UU250115heartboxer *{box-sizing: border-box;}

#UU250115heartboxer picture,
#UU250115heartboxer figure,
#UU250115heartboxer img{
  display: block;
  width: 100%;
  height: auto;
}

#UU250115heartboxer .imgOuter > a,
#UU250115heartboxer figure > a{display: block; width: 100%; height: auto;}

#UU250115heartboxer a{
  display: block;
}


#UU250115heartboxer a:hover{
  opacity: 1;
}


/*******************************
fadeInSetting
*******************************/
#UU250115heartboxer .fadeInBlock,
#UU250115heartboxer .fadeInBlockPC{
  visibility: hidden;
  opacity: 0;
  transform: translateY(4rem);
  transition: opacity 0.8s ease, transform 0.8s ease;
  pointer-events: none;
}

#UU250115heartboxer .fadeInBlock.view,
#UU250115heartboxer .fadeInBlockPC.view{
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  pointer-events: inherit;
}

#UU250115heartboxer .fadeInBlock_spot {
  visibility: hidden;
  opacity: 0;
  transition: opacity 1.5s ease;
  pointer-events: none;
}

#UU250115heartboxer .fadeInBlock_spot.view {
  visibility: visible;
  opacity: 1;
  pointer-events: inherit;
}



/*******************************
mv
*******************************/
#UU250115heartboxer .mv{
  display: block;
  width: 100%;
  padding: 0;
  margin: 0 auto calc(96* (100vw / 750));
  background: #FFFFFF;
}

#UU250115heartboxer .mv .outer{
  display: block;
}

/*******************************
lpMainTTL
*******************************/
#UU250115heartboxer .lpMainTTLArea{
  margin-bottom: calc(110 * (100vw / 750));
}

#UU250115heartboxer .lpMainTTL{
  display: block;
  padding-bottom: calc(26 * (100vw / 750));
}

/* #UU250115heartboxer .lpMainTTL > span:nth-of-type(1){
  display: block;
  font-size: calc(30 * (100vw / 750));
  line-height: 2.15;
  letter-spacing: 0.1em;
  text-align: center;
  font-feature-settings: 'palt';
  padding-left: calc(2 * (100vw / 750));
  margin-bottom: calc(8 * (100vw / 750));
  font-weight: 400;
} */

/* #UU250115heartboxer .lpMainTTL > span:nth-of-type(1){
  display: block;
  font-size: calc(38 * (100vw / 750));
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: center;
  font-feature-settings: 'palt';
  padding-left: calc(5 * (100vw / 750));
  font-weight: 400;
} */


/*******************************
lpLede
*******************************/
#UU250115heartboxer .lpLede{
  display: block;
  font-size: calc(24 * (100vw / 750));
  font-weight: 400;
  line-height: 2;
  text-align: center;
  letter-spacing: 0.1em;
  font-feature-settings: 'palt';
  color: #666666;
}



/*******************************
borderCatch
*******************************/
#UU250115heartboxer .secTTL{
  display: block;
  padding-bottom: calc(28 * (100vw / 750));
  margin-bottom: calc(60 * (100vw / 750));
  /* font-family: "jaf-bernino-sans", sans-serif; */
  font-weight: 400;
  /* font-style: normal; */
  font-size: calc(34 * (100vw / 750));
  letter-spacing: 0.04em;
  line-height: 1;
  position: relative;
  font-feature-settings: "palt";
}

#UU250115heartboxer .secTTL::after{
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background: #555555;
  position: absolute;
  left: 0;
  bottom: 0;
  transform: scaleX(0);
  transition: transform 1.8s ease 0.2s;
  transform-origin: left;
}

#UU250115heartboxer .secTTL.view::after{
  transform: scaleX(1);
}


/*******************************
sec01
*******************************/
#sec01{
  width: 100%;
  display: block;
  margin: 0 auto calc(160* (100vw / 750));
  position: relative;
}

/*******************************
sec02
*******************************/
#sec02{
  display: block;
  width: 100%;
  margin: 0 auto calc(160* (100vw / 750));
}


/*******************************
sec03
*******************************/
#sec03{
  width: 100%;
  margin: 0 auto calc(160* (100vw /750));
}

/*******************************
sec04
*******************************/
#sec04{
  width: calc(480 * (100vw / 750));
  margin: 0 auto calc(160* (100vw /750));
}

/*******************************
sec05
*******************************/
#sec05{
  width: 100%;
  margin: 0 auto calc(120* (100vw /750));
}

/*******************************
sec06
*******************************/
#sec06{
  width: calc(180 * (100vw / 750));
  margin: 0 auto calc(120* (100vw /750));
}

/*******************************
sec07
*******************************/
#sec07{
  width: 100%;
  margin: 0 auto calc(160* (100vw /750));
  position: relative;
}

/*******************************
allItemBtn
*******************************/
#UU250115heartboxer .allItemBtn{
  display: block;
  width: calc(540 * (100vw / 750));
  height: calc(80 * (100vw / 750));
  margin: calc(139* (100vw / 750)) auto 0;
  background-color: #F1F1F1;
}

#UU250115heartboxer .allItemBtn > a{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(14*(100vw / 750));
  width: 100%;
  height: 100%;
  font-size: calc(22*(100vw / 750));
  padding: 0;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #555555;
  text-decoration: none;
  font-feature-settings: 'palt';
}


#UU250115heartboxer .allItemBtn > a img{display: block; width: 100%; height: auto;}

/*
#UU250115heartboxer .allItemBtn > a::after{
  content: '';
  display: block;
  width: calc(9 * (100vw / 750));
  height: calc(15 * (100vw / 750));
  background: url("../img/icon_btn_arrow.svg") center center no-repeat;
  background-size: 100% auto;
}
*/


/*******************************
figSlider
*******************************/
#UU250115heartboxer .figSlider{
	overflow: hidden;
	position: relative;
}

#UU250115heartboxer .figSlider .container{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}

#UU250115heartboxer .figSlider .sliderWrapper{}

#UU250115heartboxer .figSlider .slider{
  display: block;
  width: 100%;
}

#UU250115heartboxer .figSlider .slider a{
  display: block;
  width: 100%;
  height: auto;
}

#UU250115heartboxer .figSlider .slider a > img{
  display: block;
  width: 100%;
  height: auto;
}

#UU250115heartboxer .figSlider .slider.swiper-slide-active{
  pointer-events: auto;
}

#UU250115heartboxer .figSlider ul.pager{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  padding-top: calc(28 * (100vw / 750));
  gap: 0 calc(20 * (100vw / 750));
}

#UU250115heartboxer #sec02 .figSlider ul.pager{justify-content: flex-end;}


#UU250115heartboxer .figSlider ul.pager > li{
  display: block;
  width: calc(12 * (100vw / 750));
  height: calc(12 * (100vw / 750));
  border-radius: 50%;
  margin: 0;
  background: #C1C0C0;
  transition: background 0.3s ease;
  cursor: pointer;
  opacity: 1;
}

#UU250115heartboxer .figSlider ul.pager > li.swiper-pagination-bullet-active{
  background: #656565;
  pointer-events: none;
}

/*******************************
overRide
*******************************/
#UU250115heartboxer .pcView{display: none;}


/*******************************
両端が見切れるslickスライダー
*******************************/
.goods_slide {
  width: calc(540* (100vw /750));
  margin: 0 calc(20* (100vw /750));
}
#UU250115heartboxer .slide.js-slide_wrap .slick-dots {
  bottom: calc(-57* (100vw /750));
}
#UU250115heartboxer .slide.js-slide_wrap .slick-dots li.slick-active button {
  background: #656565;
}
#UU250115heartboxer .slide.js-slide_wrap .slick-dots li {
  margin: 0 calc(-4* (100vw / 750));
}
#UU250115heartboxer .slide.js-slide_wrap .slick-dots li button:before {
  font-size: 7.5px;
  color: #C1C0C0;
  opacity: 1;
}
#UU250115heartboxer .slide.js-slide_wrap .slick-dots li.slick-active button:before {
  opacity: 1;
  color: #656565;
}
#UU250115heartboxer .max-width_img .slick-dots {
  margin: calc(30* (100vw /750)) auto 0 ;
}
#UU250115heartboxer .slick-dots li.slick-active button {
  background: transparent !important;
}







/*******************************
UU250115heartboxer 追加
*******************************/
.pc_on {
  display: none;
}
.pc_on_f {
  display: none;
}
.sp_on {
  display: block;
}
.sp_on_f {
  display: flex;
}
.order1 {
  order: 1;
}
.order2 {
  order: 2;
}

/*  */
body {
  background-color: #e2f0f1;
}
/* Agenda One Thin */
.font_agenda {
  font-family: "agenda-one", sans-serif;
  font-weight: 200;
  font-style: normal;
}

.mint_main_ttl {
  text-align: center;
  font-size: calc(90* (100vw /750));
  line-height: 1.1;
  color: #59abae;
  letter-spacing: 0.02em;
  margin-bottom: calc(45* (100vw /750));
}
.mint_main_sub_ttl {
  text-align: center;
  font-size: calc(26* (100vw /750));
  color: #59abae;
  letter-spacing: 0.025em;
  margin-bottom: calc(113* (100vw /750));
  font-weight: 400;
}
.heart_icon {
  width: calc(180* (100vw /750));
  margin: 0 auto calc(87* (100vw /750));
}

/* sec01 */
.sec01_imgBlock {
  width: calc(480* (100vw /750));
  margin: 0 auto;
}
.deco_line01 {
  position: absolute;
  top: 83%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  pointer-events: none;
}

/* sec02 */
.sec02_imgBlock {
  width: 100%;
  margin-bottom: calc(98* (100vw /750));
}
.sec02_detail {
  border: solid 1px #59abae;
  width: calc(680* (100vw /750));
  margin: 0 auto;
}
.sec02_detail_ttl {
  background-color: #e2f0f1;
  padding: 0 calc(37* (100vw /750));
  margin-top: calc(-20* (100vw /750));
  margin-bottom: calc(25* (100vw /750));
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: #59abae;
  font-size: calc(40* (100vw /750));
  letter-spacing: 0.075em;
  width: fit-content;
}
.sec02_detail_lead {
  text-align: justify;
  width: calc(560* (100vw /750));
  margin: 0 auto calc(49* (100vw /750));
  font-size: calc(24* (100vw /750));
  letter-spacing: 0.04em;
  line-height: 2;
}

/* sec03 */
.flex_base {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sec03_img01 {
  width: calc(640* (100vw /750));
  margin-right: auto;
}
.sec03_img02 {
  width: calc(460* (100vw /750));
  margin-top: calc(60* (100vw /750));
  margin-bottom: calc(60* (100vw /750));
  margin-left: auto;
}
.sec03_textbox {
  margin-top: 0;
  margin-bottom: calc(110* (100vw /750));
  width: calc(660* (100vw /750));
  margin-left: auto;
  margin-right: auto;
}
.category_ttl {
  font-size: calc(100* (100vw /750));
  letter-spacing: 0.02em;
  color: #59abae;
  margin-bottom: calc(12* (100vw /750));
}
.category_lead {
  font-size: calc(24* (100vw /750));
  letter-spacing: 0.04em;
  line-height: 2;
  text-align: justify;
}
.sec03_img03 {
  width: 100%;
  margin: 0 auto;
}

/* sec05 */
.sec05_img01 {
  width: calc(460* (100vw /750));
  margin-right: auto;
  margin-top: calc(60* (100vw /750));
  margin-bottom: calc(60* (100vw /750));
  order: 2;
}
.sec05_img02 {
  width: calc(640* (100vw /750));
  margin-left: auto;
  order: 1;
}
.sec04_textbox {
  margin-top: 0;
  margin-bottom: calc(110* (100vw /750));
  width: calc(660* (100vw /750));
  margin-left: auto;
  margin-right: auto;
}
.sec04_textbox .category_ttl {
  margin-left: unset;
  text-align: left;
  letter-spacing: 0.005em;
}
.sec05_img03 {
  width: 100%;
  margin: 0 auto;
}

/* sec06 */
#sec06 .heart_icon {
  margin-bottom: 0;
}

/* sec07 */
.sec07_img01 {
  width: calc(660* (100vw /750));
  margin: 0 auto;
  position: relative;
}
.deco_line02 {
  position: absolute;
  top: 56%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  pointer-events: none;
}