@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

/* CSS Document */
*{ margin:0; padding:0; box-sizing:border-box; word-break:break-all;}
div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
ul,ol{ list-style:none;}
html,body {
margin:0 auto;
padding:0;
font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif;
font-size:20px;
text-align:left;
background: #f8e9e9;
color:#374151;
min-width:1200px;
}
@media screen and (max-width:768px){
html,body{ font-size:4vw; min-width:240px; max-width:767px;}
}



/*img*/
#lp_content img{ border-style:none; vertical-align:bottom; padding:0; line-height:0em; max-width:100%; height:auto;}
#lp_content figure{margin:0 auto; text-align:center;}

/*txt*/
#lp_content .cormorant-garamond{ font-family: "Cormorant Garamond", serif;}
#lp_content p{ line-height:1.75em; margin:0 0 1em; padding:0;}
#lp_content p:last-child{ margin:0;}
#lp_content strong{ font-weight:bold;}
#lp_content .under_line{ text-decoration:underline;}
#lp_content .line_through{ text-decoration:line-through;}
#lp_content .left{ text-align:left;}
#lp_content .right{ text-align:right;}
#lp_content .center{ text-align:center;}

/*link*/
#lp_content a{ color:inherit; text-decoration:none;}

/*content*/
#lp_content{ overflow:hidden; margin:0 auto; padding:0; font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif; font-size:20px;text-align:left; color:#374151; min-width:1200px;}
@media screen and (max-width:768px){
#lp_content{ font-size:4vw; min-width:240px; max-width:767px;}
}
#lp_content section{ width:100%; margin:0 auto; padding: 80px 0;}
#lp_content .maincontent{ padding:0; margin:0 auto; width:1200px;}
@media screen and (max-width:768px){
#lp_content section{ padding: 15% 0;}
#lp_content .maincontent{ padding:0; margin:0 auto; width:92.5%;}
}

/*tit*/
#lp_content h1, #lp_content h2, #lp_content h3, #lp_content h4, #lp_content h5, #lp_content h6{ line-height: 1.25em; letter-spacing: 0.05em;}



/*fv*/
#lp_content #fv{ padding: 0; overflow: hidden; background: url("../images/fv.png") center center no-repeat; background-size: auto 100%; width: 100%; height: 660px;}
#lp_content #fv img{ display: none;}
@media print, screen and (min-width:1440px){
#lp_content #fv{ height: auto;}
#lp_content #fv img.pc{ display: block;}
}
@media screen and (max-width:768px){
#lp_content #fv{ height: auto;}
#lp_content #fv img.smp{ display: block;}
}

/*lead*/
#lp_content #lead{ background: #F8E9E9; padding-top: 0;}
#lp_content #lead h2{ text-align: center; font-size: 1.4rem; margin-bottom: 40px;}
#lp_content #lead h2 strong{ font-size: 1.6rem; color: #ff5285;}
#lp_content #lead #cat{ background: #fff; border: 1px solid #C9A063; padding: 50px; border-radius: 100px 100px 0 0;}
#lp_content #lead #cat h3{ text-align: center; font-size: 2.7rem; color: #C9A063; margin-bottom: 40px;}
#lp_content #lead #cat h3 strong{ display: inline-block; font-weight: 400; position: relative;}
#lp_content #lead #cat h3 strong:before{ content: ""; width: 30px; height: 30px; background: url("../images/cat_tit_ico.png") center center no-repeat; background-size: 100%; position: absolute; left: -70px; top: 50%; transform: translateY(-50%);}
#lp_content #lead #cat h3 strong:after{ content: ""; width: 30px; height: 30px; background: url("../images/cat_tit_ico.png") center center no-repeat; background-size: 100%; position: absolute; right: -70px; top: 50%; transform: translateY(-50%);}
#lp_content #lead #cat ul{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center; width: calc(100% + 48px); margin: -12px 0 -12px -24px;}
#lp_content #lead #cat ul li{ width: calc(33.33% - 48px); margin: 12px 24px;}
#lp_content #lead #cat ul li a{ display: flex; align-items: center; justify-content: center; text-align: center; width: 100%; height: 88px; border-radius: 100px; background: #000; color: #fff; font-size: 1.5rem; line-height: 1.25em; font-weight: 500; transition: 0.3s;}
#lp_content #lead #cat ul li a{ background: linear-gradient(to bottom,  #ffb9b9 0%,#f98cac 50%,#e43c93 100%);}
#lp_content #lead #cat ul li a:hover{ opacity: 0.7;}
@media screen and (max-width:768px){
#lp_content #lead{ padding-top: 5%;}
#lp_content #lead h2{ font-size: 1.33rem; margin-bottom: 8%;}
#lp_content #lead h2 strong{ display: block; font-size: 1.5rem; margin-top: 0.25em;}
#lp_content #lead #cat{ padding: 10% 3.75%; border-radius: 10vw 10vw 0 0;}
#lp_content #lead #cat h3{ font-size: 2rem; margin-bottom: 7.5%;}
#lp_content #lead #cat h3 strong:before{ width: 5vw; height: 5vw; left: -10vw;}
#lp_content #lead #cat h3 strong:after{ width: 5vw; height: 5vw; right: -10vw;}
#lp_content #lead #cat ul{ width: calc(100% + 2.5vw); margin: -1.25vw 0 -1.25vw -1.25vw;}
#lp_content #lead #cat ul li{ width: calc(50% - 2.5vw); margin: 1.25vw;}
#lp_content #lead #cat ul li a{ height: 11.25vw; border-radius: 15vw; font-size: 0.9rem; line-height: 1.25em;}
}

/*item*/
#lp_content .item_sec:nth-child(2n+1){ background: #fff;}
#lp_content .item_sec .maincontent{ position: relative;}
#lp_content .item_sec:nth-child(2n+1) .maincontent:after{ content: ""; width: 76px; height: 76px; background: url("../images/cont_ico_r.png") center center no-repeat; background-size: 100%; position: absolute; right: -50px; top: -40px;}
#lp_content .item_sec:nth-child(2n) .maincontent:after{ content: ""; width: 76px; height: 76px; background: url("../images/cont_ico_l.png") center center no-repeat; background-size: 100%; position: absolute; left: -50px; top: -40px;}
@media screen and (max-width:768px){
#lp_content .item_sec:nth-child(2n+1) .maincontent:after{ width: 10vw; height: 10vw; right: 0; top: -10vw;}
#lp_content .item_sec:nth-child(2n) .maincontent:after{ width: 10vw; height: 10vw; left: 0; top: -10vw;}
}

#lp_content .item_sec h2{ text-align: center; font-size: 2.2rem; padding-bottom: 40px; margin-bottom: 30px; background: url("../images/tit_ico.png") center bottom no-repeat; background-size: auto 30px;}
@media screen and (max-width:768px){
#lp_content .item_sec h2{ font-size: 1.6rem; padding-bottom: 6.25vw; margin-bottom: 5vw; background-size: auto 5vw;}
}

#lp_content .item_sec .item_list ul{ width: calc(100% + 24px); margin: -12px 0 -12px -12px; display: flex; flex-wrap: wrap;}
#lp_content .item_sec .item_list ul li{ display: flex; width: calc(25% - 24px); margin: 12px;}
#lp_content .item_sec .item_list ul li a{ display: flex; flex-direction: column; background: #f8e9e9; border-radius: 12px; padding: 12px; transition: 0.3s;}
#lp_content .item_sec:nth-child(2n) .item_list ul li a{ background: #fff;}
#lp_content .item_sec .item_list ul li a:hover{ opacity: 0.7;}
#lp_content .item_sec .item_list ul li a figure img{ width: 100%;}
#lp_content .item_sec .item_list ul li a figure{ margin-bottom: 8px;}
#lp_content .item_sec .item_list ul li a p{ font-size: 0.7rem; line-height: 1.33em; margin: 0 0 4px;}
#lp_content .item_sec .item_list ul li a h3{ font-size: 0.8rem; font-weight: 400; color: #4BC8E6;}
#lp_content .item_sec .item_list ul li a h4{ font-size: 0.9rem;}
#lp_content .item_sec .item_list ul li a .price{ display: flex; align-items: center; justify-content: flex-end;}
#lp_content .item_sec .item_list ul li a .price span{ font-size: 0.8rem;}
#lp_content .item_sec .item_list ul li a .price span:after{ content: "→"; font-size: 0.7rem; margin: 0 0.25em;}
#lp_content .item_sec .item_list ul li a .price strong{ font-size: 1rem; color: #FF5285;}
@media screen and (max-width:768px){
#lp_content .item_sec .item_list ul{ width: calc(100% + 3.75vw); margin: -1.875vw 0 -1.875vw -1.875vw;}
#lp_content .item_sec .item_list ul li{ width: calc(50% - 3.75vw); margin: 1.875vw;}
#lp_content .item_sec .item_list ul li a{ border-radius: 1.25vw; padding: 1.25vw;}
#lp_content .item_sec .item_list ul li a figure{ margin-bottom: 2.5%;}
#lp_content .item_sec .item_list ul li a p{ font-size: 0.7rem; margin-bottom: 1.25%;}
#lp_content .item_sec .item_list ul li a p br{ display: none;}
#lp_content .item_sec .item_list ul li a h3{ font-size: 0.8rem;}
#lp_content .item_sec .item_list ul li a h4{ font-size: 0.9rem;}
#lp_content .item_sec .item_list ul li a .price span{ font-size: 0.8rem;}
#lp_content .item_sec .item_list ul li a .price span:after{ font-size: 0.7rem;}
#lp_content .item_sec .item_list ul li a .price strong{ font-size: 0.9rem;}
}

@media print, screen and (min-width:769px){
#lp_content .smp{ display:none !important;}
}
@media screen and (max-width:768px){
#lp_content .pc{ display:none !important;}
}


#lp_content .intro_text {
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.8em;
  margin: 40px auto 20px;
  padding: 0 20px;
  max-width: 800px;
  color: #374151;
}
#lp_content .logo_link {
  text-align: center;
  padding: 20px 0;
}
#lp_content .logo_link img {
  width: 180px;
  height: auto;
}
#lp_content .footer_link {
  text-align: center;
  margin: 60px auto 40px;
  font-size: 1rem;
}
#lp_content .footer_link a {
  color: #4BC8E6;
  text-decoration: underline;
  font-weight: bold;
  transition: 0.3s;
}
#lp_content .footer_link a:hover {
  opacity: 0.7;
}
#lp_content .banner_links {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 24px;
  margin: 60px auto 40px;
  padding: 0 5px;
}
#lp_content .banner_links a {
  display: block;
  width: 600px;
  max-width: 100%;
}
#lp_content .banner_links img {
  width: 100%;
  height: auto;
  transition: 0.3s;
}
#lp_content .banner_links img:hover {
  opacity: 0.8;
}
#lp_content .closing_text {
  background: #fff5f7;
  border-radius: 15px;
  padding: 40px 30px;
  max-width: 800px;
  margin: 20px auto 20px;
  text-align: center;
  font-size: 1rem;
  line-height: 1.8em;
  color: #374151;
  box-shadow: 0 0 10px rgba(0,0,0,0.05); /* 軽い影で浮かせる */
}

@media screen and (max-width: 768px) {
  #lp_content .intro_text {
    font-size: 1rem;
    margin: 5vw auto 5vw;
    padding: 0 5vw;
  }
    #lp_content .logo_link {
    padding: 3vw 0 3vw;
  }
  #lp_content .logo_link img {
    width: 40vw;
  }
    #lp_content .footer_link {
    font-size: 1rem;
    margin: 10vw auto 10vw;
  }
    #lp_content .banner_links {
    margin: 5vw auto 8vw;
    padding: 0 2vw;
  }
  #lp_content .banner_links a {
    width: 100%;
  }
  #lp_content .closing_text {
    font-size: 1rem;
    margin: 5vw auto 10vw;
    padding: 8vw 5vw;
  }
}