@charset "UTF-8";
header nav {
 position: absolute;
 width: 100%;
 z-index: 50;
}
main {
 background: #fff;
}
.linkbtn a {
 display: inline-block;
 border: 3px solid #FFD7D7;
 background: #fff;
 padding: 1.2em 4em 1.2em 2em;
 font-weight: 600;
 color: #FF8383;
 letter-spacing: .05em;
 position: relative;
 line-height: 1;
 border-radius: 30px;
}
.linkbtn a span {
 width: 1.7em;
 height: 1px;
 border-bottom: 1px solid;
 position: absolute;
 right: 1.5em;
 top: 1.7em;
}
.linkbtn a span::after {
 content: "";
 display: block;
 width: 12px;
 height: 1px;
 border-bottom: 1px solid;
 position: absolute;
 right: 0;
 bottom: -1px;
 transform-origin: right bottom;
 transform: rotate(45deg);
}
.mainimage .babyimage {
 position: relative;
}
.mainimage .babyimage img.babysmile {
 width: 100%;
 height: 35vh;
 min-height: 340px;
 object-fit: cover;
 object-position: 50% 50%;
}
.mainimage .babyimage .maincopy {
 position: absolute;
 left: 20px;
 bottom: 60px;
 width: 65%;
 max-width: 320px;
 -webkit-filter: drop-shadow(0px 0px 5px rgba(20, 60, 100, 0.3));
 -moz-filter: drop-shadow(0px 0px 5px rgba(20, 60, 100, 0.3));
 -ms-filter: drop-shadow(0px 0px 5px rgba(20, 60, 100, 0.3));
 filter: drop-shadow(0px 0px 5px rgba(20, 60, 100, 0.3));
 z-index: 10;
}
.mainimage .mainitem {
 position: relative;
 width: 90%;
 margin: -40px 0 0 10%;
 min-height: 112vw;
 background-image: linear-gradient(115deg, rgba(255, 222, 222, 1) 0%, rgba(255, 205, 205, 1) 20%, rgba(255, 205, 205, 1) 45%, rgba(187, 158, 211, 1) 100%);
}
.mainimage .mainitem .photos img {
 width: 120vw !important;
 max-width: 120vw !important;
 height: auto;
 position: absolute;
 left: -30px;
 top: 5%;
}
.mainimage .mainitem .photos::before {
 content: "";
 width: 76%;
 height: 74%;
 position: absolute;
 right: 5%;
 bottom: 8%;
 background-image: radial-gradient(#ffffff 4px, transparent 2px), radial-gradient(#ffffff 4px, transparent 2px);
 background-size: 24px 24px;
 background-position: 6px 6px, 18px 18px;
 opacity: 0.3;
}
.mainimage .mainitem .photos::after {
 content: "";
 width: 80%;
 height: 76%;
 position: absolute;
 top: 8%;
 left: 8%;
 border: 8px solid #fff;
}
.mainimage .mainitem .copy-en {
 width: 72%;
 height: auto;
 position: absolute;
 left: -8%;
 top: auto;
 bottom: 20px;
 z-index: 9;
}
.maincopy_02 {
 display: none;
}
.photos, .swiper .swiper-slide {
 width: 100%;
 height: 112vw;
}
.swiper {
 overflow: visible;
}
.about, .product_list_inner, .news {
 padding: 0px 7%;
 margin: auto;
}
@media print, screen and (min-width: 740px) {
 .mainimage {
  padding: 0 0 15vh 0;
 }
 .mainimage .babyimage img.babysmile {
  width: 55%;
  height: 65vh;
 }
 .mainimage .mainitem {
  position: absolute;
  width: 58%;
  margin: 0;
  top: 92px;
  right: 0;
  height: 70vh;
  min-height: 70vh;
 }
 .mainimage .mainitem .photos img {
  width: 90vw !important;
  max-width: 90vw !important;
  height: auto;
  position: absolute;
  left: -60px;
  top: 5%;
 }
 .photos, .swiper .swiper-slide {
  width: 100%;
  height: 70vh;
 }
 .mainimage .babyimage .maincopy {
  position: absolute;
  left: 3%;
 }
 .mainimage .mainitem .copy-en {
  width: 85%;
  height: auto;
  position: absolute;
  left: -12%;
  top: auto;
  bottom: 10px;
  transform: translateY(0);
  z-index: 9;
 }
 .mainimage .mainitem .photos::before {
  bottom: 11%;
 }
}
@media (min-width: 960px) {
 .mainimage {
  position: relative;
  padding: 0 0 0 0;
 }
 .mainimage .babyimage img.babysmile {
  width: 42%;
  height: calc(100vh + 200px);
 }
 .mainimage .babyimage .maincopy {
  bottom: 300px;
 }
 .mainimage .mainitem {
  position: absolute;
  width: 65%;
  margin: 0 0 0;
  height: 70vh;
  right: 0;
  top: 150px;
 }
 .mainimage .mainitem .photos img {
  width: 65vw !important;
  max-width: 960px !important;
  position: absolute;
  left: 10%;
  top: 0;
 }
 .mainimage .mainitem .copy-en img {
  width: 440px;
 }
 .about {
  margin-top: -200px;
 }
}
@media print, screen and (min-width: 1240px) {
 .mainimage .babyimage img.babysmile {
  height: 1140px;
 }
 .mainimage .mainitem {
  height: 690px;
  min-height: 690px;
 }
 .photos, .swiper .swiper-slide {
  width: 100%;
  height: 690px;
 }
 .mainimage .mainitem .photos img {
  width: auto;
  max-width: 960px;
 }
 .mainimage .babyimage .maincopy {
  display: none;
 }
 .maincopy_02 {
  display: block;
  position: absolute;
  z-index: 10;
  top: 80px;
  left: -10%;
  width: 440px;
 }
 .maincopy_02 p {
  font-size: 1.1em;
  color: #fff;
  font-weight: bold;
  padding: 0 0 0 38px;
  text-shadow: 0px 0px 12px rgba(255, 51, 71, 0.5);
  font-feature-settings: "palt";
 }
 .mainimage .mainitem .photos::before {
  content: "";
  width: 58%;
  height: 524px;
  right: 3%;
 }
 .mainimage .mainitem .photos::after {
  content: "";
  width: 58%;
  height: 520px;
  top: 8%;
  left: auto;
  right: 8%;
 }
}
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-width: 1025px) {
 .mainimage .mainitem .photos img, .copy-en img {
  image-rendering: -webkit-optimize-contrast;
  transform: translateZ(0);
 }
}
@media print, screen and (min-width: 1440px) {
 .about, .product_list_inner, .news {
  padding: 0px 0;
  margin: auto;
  max-width: 1280px;
 }
 .mainimage .mainitem {
  height: 690px;
  min-height: 660px;
 }
 .photos, .swiper .swiper-slide {
  width: 100%;
  height: 690px;
 }
}
.about {
 padding-top: 100px;
 padding-bottom: 50px;
 position: relative;
}
.about::before {
 content: '';
 position: absolute;
 top: -30px;
 right: 7%;
 width: 45%;
 max-width: 204px;
 height: 500px;
 display: block;
 background: url("../images/index/bird.png") no-repeat;
 background-size: contain;
 z-index: 10;
}
@media print, screen and (max-width: 959px) {
 .about-txt {
  padding: 0 8%;
 }
 .about-txt p {
  font-size: .92em;
 }
}
.about h2 {
 margin-bottom: 30px;
 z-index: 2;
 position: relative;
}
.about .linkbtn {
 text-align: center;
 margin-top: 40px;
 padding: 0 0 60px 0;
}
.about h2, .products h2, .products h3, .news h2 {
 color: #FFA0A6;
 font-size: 2.25em;
 letter-spacing: .15em;
 padding-left: .15em;
 text-align: center;
 font-weight: 600;
 text-transform: lowercase;
}
.about > div.cotton-image img {
 width: 100%;
 height: 40vh;
 object-fit: cover;
 object-position: 50% 50%;
}
@media print, screen and (min-width: 960px) {
 .about {
  display: flex;
  flex-direction: row-reverse;
 }
 .about > div {
  width: 50%;
 }
 .about > div.about-txt {
  padding-left: 50px;
 }
 .about > div.cotton-image img {
  width: 100%;
  height: 100%;
 }
}
@media print, screen and (min-width: 1240px) {
 .about {
  padding-bottom: 100px;
  position: relative;
  margin-top: -260px;
 }
 .about > div.about-txt {
  padding-top: 50px;
 }
 .about::before {
  position: absolute;
  top: 0px;
 }
}
.about-txt .linkbtn a {
 border: 3px solid #ffa4a4;
 background: #ffa4a4;
 color: #fff;
}
@media (hover: hover) {
 .about-txt .linkbtn a:hover {
  border: 3px solid #ffa4a4;
  background: #fff;
  color: #FF8383;
 }
}
.products h2, .products h3 {
 color: #C69C6D;
}
.products {
 position: relative;
}
.products::before {
 content: '';
 top: 0;
 left: 0;
 width: 100%;
 padding-top: 35%;
 display: block;
}
.products::after {
 position: absolute;
 content: '';
 top: 0;
 left: 0;
 display: block;
 width: 100%;
 height: 800px;
 background-size: contain;
 background-repeat: no-repeat;
}
@media print, screen and (max-width: 739px) {
 .products::after {
  background-image: url("../images/index/garland_sp.png");
 }
}
@media print, screen and (min-width: 740px) {
 .products::after {
  background-image: url("../images/index/garland_tb.png");
 }
 .products::before {
  padding-top: 18%;
  display: block;
  margin-bottom: -5%;
 }
 .products::after {
  width: 94%;
  left: 3%;
  margin-bottom: -10%;
  max-width: 1012px;
 }
}
@media print, screen and (min-width: 1024px) {
 .products::after {
  background-image: url("../images/index/garland_pc.png");
 }
 .products::before {
  padding-top: 180px;
  margin-bottom: -100px;
 }
 .products::after {
  max-width: 1012px;
  margin-bottom: -100px;
  left: 50%;
  transform: translateX(-50%);
  pointer-events: none;
 }
}
.products h3 {
 font-size: 1.3em;
 font-weight: 600;
}
.products h3 span {
 display: inline-block;
 position: relative;
}
.products h3 span::after {
 content: "";
 position: absolute;
 width: 100%;
 height: 1px;
 left: 0;
 bottom: -5px;
 border-top: 1px solid;
}
.category_nav {
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 padding: 20px 7% 30px;
}
.category_nav li {
 position: relative;
 text-align: center;
 font-size: 0.75em;
 line-height: 1.4;
 width: calc(100% / 3);
}
.category_nav li a {
 display: block;
 position: relative;
 height: 100%;
 padding: 5px 5px;
 font-weight: 700;
 font-feature-settings: "palt";
 line-height: 1.5;
 transition: .3s;
}
.category_nav li a span.item-icon {
 display: block;
 transition: .3s;
}
.category_nav li a span:not(.item-icon) {
 border-bottom: 1px solid transparent;
 transition: .3s;
}
@media print, screen and (min-width: 640px) {
 .category_nav li {
  width: calc(100% / 6);
 }
}
@media print, screen and (min-width: 1024px) {
 .category_nav li a img {
  width: 90%;
 }
}
@media print, screen and (min-width: 1240px) {
 .category_nav li {
  width: 170px;
 }
}
.product_list {
 background: #fbf7f1;
 position: relative;
 padding-bottom: 70px;
}
.product_list::before {
 content: "";
 display: block;
 width: 100%;
 height: 100px;
 background: #fff;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 1;
}
ul.items {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 position: relative;
 z-index: 2;
}
@media print, screen and (max-width: 540px) {
 ul.items {
  font-size: 15px;
 }
}
ul.items > li {
 width: 47%;
 padding-bottom: 40px;
}
ul.items > li:nth-child(1), ul.items > li:nth-child(2) {
 width: 100%;
}
ul.items li a {
 transition: .3s;
}
@media print, screen and (min-width: 740px) {
 ul.items > li {
  width: 31%;
  padding-bottom: 60px;
 }
 ul.items > li:nth-child(1), ul.items > li:nth-child(2) {
  width: 47%;
 }
}
@media print, screen and (min-width: 1024px) {
 ul.items > li {
  width: 23%;
  padding-bottom: 80px;
 }
}
ul.items > li h4 {
 padding: 20px 0 12px 0;
 line-height: 1.5;
}
ul.items > li:nth-child(1) h4, ul.items > li:nth-child(2) h4 {
 font-size: 1.25em;
}
ul.items > li p {
 font-size: .875em;
 line-height: 1.6;
}
ul.items .price {
 line-height: 1.3;
 padding-top: .5em;
 font-weight: 600;
}
ul.items .price .price_tax_in {
 font-size: 1.25em;
 display: inline-block;
}
ul.items .price .price_tax_in::after {
 content: "（税込）";
 font-weight: normal;
 font-size: 14px;
 padding: 0 .2em;
 font-feature-settings: "palt";
}
@media print, screen and (min-width: 740px) {
 ul.items .price .price_tax_in {
  display: inline;
 }
}
ul.items > li p {
 display: -webkit-box;
 -webkit-line-clamp: 2;
 -webkit-box-orient: vertical;
 overflow: hidden;
}
ul.items .lineup, ul.items .setitem {
 padding: 1em 0 0 0;
 font-size: .875em;
 line-height: 1.6;
}
ul.items .lineup::before, ul.items .setitem::before {
 content: "ラインナップ";
 font-size: .815em;
 font-weight: bold;
 color: #fff;
 background: #D6B292;
 display: inline-block;
 padding: 0 1em;
 border-radius: 20px;
 font-feature-settings: "palt";
 margin-right: .7em;
}
ul.items .setitem::before {
 content: "セット内容";
}
ul.items .color {
 padding: 7px 0 0 0;
}
ul.items .color::before {
 content: "COLOR";
 line-height: 28px;
 letter-spacing: .1em;
 font-weight: 600;
 font-size: 14px;
 display: block;
}
ul.items .color ul {
 display: flex;
}
ul.items .color ul li {
 padding: 0 3px;
}
ul.items .color span {
 display: inline-block;
 border: 2px solid #fff;
 width: 18px;
 height: 18px;
 border-radius: 20px;
 box-shadow: 0 0 0 1px rgba(140, 98, 57, 0.2);
}
@media print, screen and (max-width: 739px) {
 ul.items .color ul li:first-child {
  padding: 0 3px 0 0;
 }
}
@media print, screen and (min-width: 740px) {
 ul.items .color {
  display: flex;
 }
 ul.items .color ul {
  padding-left: 5px;
 }
}
ul.items > li.dummy {
 height: 1px;
 padding-bottom: 0;
}
.product_image {
 border: 5px solid #fff;
 box-shadow: 0px 2px 20px rgba(178, 156, 134, 0.2);
}
@media print, screen and (min-width: 740px) {
 .product_image {
  border: 10px solid #fff;
 }
}
.products .linkbtn {
 position: relative;
 text-align: center;
 z-index: 2;
}
.products .linkbtn a {
 border: 3px solid #c69c6d;
 background: #c69c6d;
 color: #fff;
}
@media (hover: hover) {
 .category_nav li a:hover span:not(.item-icon) {
  border-bottom: 1px solid #bd8d6f;
 }
 .category_nav li a:hover span.item-icon {
  transform: translateY(-5px);
 }
 ul.items a .product_image, ul.items a h4 span {
  transition: .3s;
 }
 ul.items a:hover .product_image {
  filter: brightness(110%);
 }
 ul.items a h4 span {
  border-bottom: 1px solid transparent;
 }
 ul.items a:hover h4 span {
  border-bottom: 1px solid #bd8d6f;
 }
 .products .linkbtn a:hover {
  border: 3px solid #c69c6d;
  color: #C0915D;
  background: #fff;
 }
}
.news {
 padding-top: 100px;
 padding-bottom: 140px;
 position: relative;
}
.news::before {
 content: '';
 position: absolute;
 top: 20px;
 left: 7%;
 width: 75%;
 max-width: 386px;
 height: 500px;
 display: block;
 background: url("../images/index/cloud.png") no-repeat;
 background-size: contain;
 z-index: 1;
}
.news h2 {
 z-index: 2;
 position: relative;
}
.newslist {
 position: relative;
 z-index: 3;
 padding: 0 0 50px 0;
}
.newslist .date {
 margin-bottom: 0em;
}
.newslist li {
 padding: 30px 0;
 border-bottom: 1px solid #eae7e4;
}
.newslist li:last-child {
 border-bottom: none;
}
.newslist li a {
 display: flex;
}
.newslist li .newsimage {
 width: 150px;
}
.newslist li .newsimage img {
 width: 130px;
 height: 130px;
 margin-top: 5px;
 object-fit: cover;
 object-position: 50% 50%;
}
.newslist li .date {
 color: #FF8899;
 letter-spacing: .1em;
 font-size: 14px;
 font-weight: 600;
}
.newslist li .newstxt {
 width: calc(100% - 150px);
}
@media print, screen and (max-width: 374px) {
 .newslist li .newsimage {
  width: 38%;
  height: 100px;
 }
 .newslist li .newsimage img {
  width: calc(100% - 15px);
 }
 .newslist li .newstxt {
  width: 62%;
 }
}
.newslist li .newstxt h3 {
 /*font-weight: normal;*/
 margin-bottom: .3em;
 font-size: 1.1em;
 line-height: 1.5;
}
.newslist li .newstxt p {
 font-size: .875em;
}
@media print, screen and (min-width: 740px) {
 .newslist li .newstxt h2 {
  font-size: 1.5em;
 }
 .newslist li .newstxt p {
  font-size: .9375em;
 }
}
.news .imageBlock {
 position: relative;
}
.news .imageBlock img {
 width: 85%;
 height: 85vw;
 object-fit: cover;
 object-position: 50% 100%;
 position: relative;
 z-index: 2;
}
.news .imageBlock::after {
 content: '';
 display: block;
 width: 85%;
 height: 85vw;
 background: #C7E3F9;
 opacity: 0.5;
 position: absolute;
 z-index: 1;
 top: 15%;
 left: 15%;
}
@media print, screen and (min-width: 740px) {
 .news {
  padding-top: 130px;
 }
 .news .imageBlock img, .news .imageBlock::after {
  width: 60%;
  height: 380px;
 }
}
@media print, screen and (min-width: 960px) {
 .news {
  padding-top: 160px;
 }
 .newswrap {
  display: flex;
 }
 .newslist {
  width: 65%;
  padding-right: 50px;
 }
 .news .imageBlock {
  width: 35%;
 }
 .news .imageBlock img, .news .imageBlock::after {
  width: 80%;
  height: 85%;
 }
}
@media (hover: hover) {
 .newslist a .newsimage, .newslist a h3 span {
  transition: .3s;
 }
 .newslist a h3 span {
  border-bottom: 1px solid transparent;
 }
 .newslist a:hover .newsimage {
  filter: brightness(110%);
 }
 .newslist a:hover h3 span {
  border-bottom: 1px solid #bd9a6f;
 }
}
@media screen {
 .itemfadein {
  opacity: 0;
  transform: translateY(30px);
  transition: all 1s;
 }
 .itemfadein.active {
  opacity: 1;
  transform: translateY(0px);
 }
 .fadeIn {
  opacity: 0;
  transition: 1s;
 }
 .fadeIn_up {
  opacity: 0;
  transform: scale(0.85);
  transition: 1s;
 }
 .fadeIn_slideup {
  opacity: 0;
  transform: translateY(30px);
  transition: 1s;
 }
 .fadeIn_up.is-show, .fadeIn.is-show {
  opacity: 1;
 }
 .fadeIn_up.is-show {
  transform: scale(1);
 }
 .fadeIn_slideup.is-show {
  opacity: 1;
  transform: translateY(0px);
 }
 .delay1 {
  transition-delay: 0.3s;
 }
 .delay2 {
  transition-delay: 0.6s;
 }
 .delay3 {
  transition-delay: 0.9s;
 }
}