@charset "UTF-8";
/*=== common reset ===*/
/*=== common layout ===*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');
h1 {
  background: none;
}
h2 {
  border-bottom: none;
}
h3 {
  background: none;
}
h4 {
  border-left: none;
}
img {
  vertical-align: bottom;
}
:root {
  --color-primary: #597D4C;
  --color-primary-rgb: 209, 233, 220;
  --color-txt: #465058;
}
.mv__h1 {
  margin: 0;
  padding: 0;
}
.lead__txt {
  text-align: center;
  padding: 1.2em 0;
  line-height: 2em;
  color: var(--color-txt);
  letter-spacing: .03em;
}
.nav {
  width: 94%;
  margin: .7em auto 2em;
}
.nav__item {
  display: flex;
  align-items: center;
  background-color: rgba(var(--color-primary-rgb));
  padding: .75em 1.1em;
  margin-bottom: 4px;
  position: relative;
}
.nav__item::after {
  content: "";
  width: .7em;
  height: .7em;
  border: .12em solid;
  border-color: transparent transparent var(--color-primary) var(--color-primary);
  transform: rotate(-45deg);
  position: absolute;
  right: 1.1em;
  bottom: 1.3em;
}
.nav__item-num, .nav__item-txt {
  color: var(--color-primary);
}
.nav__item-num {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 1.35em;
  letter-spacing: .06em;
}
.nav__item-txt {
  font-size: 1.1em;
  font-weight: 600;
  margin-left: .5em;
  letter-spacing: .05em;
}
.item__wrapper {
  width: 94%;
  margin: 0 auto;
}
.item-ttl__top {
  background-color: #8CC777;
  color: white;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  text-align: center;
  font-size: 1.1em;
  letter-spacing: .1em;
  padding: .1em 0 .19em;
}
.item__ttl-num {
  font-size: 1.15em;
  margin-left: .1em;
  margin-top: 3em;
}
.item-ttl__txt-inner {
  text-align: center;
  color: #8CC777;
  font-size: 1.5em;
  letter-spacing: .1em;
  padding: .2em 0 .5em;
  margin-bottom: 0;
}
.item-ttl__txt-border {
  font-weight: 600;
  border-bottom: 2px solid #8CC777;
  padding-bottom: .1em;
}
.item {
  border-bottom: 2px solid rgba(var(--color-primary-rgb), 0.2);
  margin: 1em 0 2.3em;
}
.item:last-child {
  border-bottom: none;
}
.item__about-img-height {
  height: auto;
}
.item__about-name {
  text-align: center;
  color: var(--color-primary);
  font-size: 1.5em;
  letter-spacing: .04em;
  margin-bottom: 0;
  font-weight: 600;
  padding-bottom: .15em;
  line-height: 1.4em;
}
.item__about-copy {
  text-align: center;
  display: block;
  font-size: 1.3em;
  color: var(--color-txt);
  margin-bottom: .5em;
  font-weight: 600;
  opacity: .85;
  letter-spacing: .04em;
}
.item__about-copy--marker {
  background: linear-gradient(transparent 60%, rgba(var(--color-primary-rgb), 0.25) 0%);
  font-weight: 600;
}
.item__about-txt {
  margin-bottom: 2em;
  text-align: justify;
  line-height: 1.8em;
  padding: 0 .8em;
}
.item__prod-list {
  display: flex;
  flex-wrap: wrap;
}
.item__prod {
  width: 49%;
  margin-bottom: 1.8em;
  position: relative;
}
.item__prod:nth-child(odd) {
  margin-right: 1%;
}
.item__prod:nth-child(even) {
  margin-left: 1%;
}
.item__prod-img-height {
  height: auto;
}
.item__prod-name {
  text-align: center;
  letter-spacing: .04em;
  margin-bottom: 0;
  font-size: 1.12em;
  color: var(--color-txt);
  font-weight: 600;
  line-height: 1.5em;
}
.item__prod-price {
  text-align: center;
  display: block;
  margin-bottom: .6em;
  color: var(--color-txt);
  font-size: 96%;
  margin-bottom: 3.2em;
}
.item__prod-tax {
  font-size: 75%;
}
.item__prod-btn {
  font-weight: bold;
  background-color: rgba(var(--color-primary-rgb), 0.9);
  width: 72%;
  color: white;
  text-align: center;
  margin: 0 auto;
  display: block;
  border-radius: 2em;
  padding: .5em 0;
  letter-spacing: .05em;
  position: absolute;
  font-weight: 600;
  bottom: 0;
  right: 0;
  left: 0;
}
.item__prod-btn::after {
  content: "";
  width: .5em;
  height: .5em;
  border: 1.6px solid white;
  border-color: white white transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  right: 1em;
  bottom: 1em;
}
.item__btn-l {
  width: 97%;
  color: var(--color-primary);
  border: .1em solid rgba(var(--color-primary-rgb), 0.75);
  display: block;
  text-align: center;
  border-radius: 2em;
  padding: 1em 0;
  margin: 0 auto 2em;
  font-weight: bold;
  font-size: 1.1em;
  position: relative;
  letter-spacing: .04em;
}
.item__btn-l::after {
  content: "";
  width: .6em;
  height: .6em;
  border: 2px solid white;
  border-color: rgba(var(--color-primary-rgb), 0.8) rgba(var(--color-primary-rgb), 0.8) transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  right: 1.2em;
  bottom: 1.4em;
}
.category {
  width: 100%;
  background-color: rgba(var(--color-primary-rgb), 0.25);
  padding: 1em 0 2em;
}
.category__ttl {
  text-align: center;
  color: var(--color-txt);
  font-size: 1.4em;
  letter-spacing: .1em;
  line-height: 1.4em;
  font-weight: 600;
  opacity: .9;
}
.category__list {
  width: 96%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.category__item {
  width: 46%;
  margin: 0 2% .8em 2%;
  background-color: white;
  text-align: center;
  border-radius: 2em;
  padding: .5em;
  min-height: 3.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.4em;
  color: var(--color-primary);
  font-weight: 600;
  position: relative;
  letter-spacing: .05em;
}
.category__item::after {
  content: "";
  width: .5em;
  height: .5em;
  border: 1.6px solid white;
  border-color: var(--color-primary) var(--color-primary) transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  right: 1em;
  bottom: 40%;
}
/* スクリーンサイズが320px以下の場合に適用 */
@media screen and (max-width: 320px) {
  .lead__txt {
    font-size: 89%;
  }
  .nav, .item__wrapper, .category {
    font-size: 85%;
  }
  .item-ttl__txt-border {
    border-bottom: .1em solid rgba(var(--color-primary-rgb), 0.6);
  }
}
/*=== contents layout ===*/
#babygifttopics--wrapper {
  background: #fffef9;
}
.mv--pc {
  background: #d1e9dc;
  background-size: 100%;
}
.lead__txt {
  font-size: 1.15em;
  margin: 1.2em 0;
  font-weight: 300;
  letter-spacing: .07em;
  line-height: 2.3em;
}
.nav {
  width: 1000px;
  margin: .7em auto 1em;
}
.nav__list {
  display: flex;
  /*justify-content: space-between;*/
  flex-wrap: wrap;
}
.nav__list-link {
  width: 313px;
  margin: 0 30px 14px 0;
}
.nav__list-link:nth-child(3n) {
  margin: 0 0 14px 0;
}
.nav__list-link:hover {
  opacity: 0.7;
}
.nav__item {
  flex-direction: column;
  padding: 12px 0 28px;
}
.nav__item::after {
  right: 47%;
  bottom: 14px;
  width: 14px;
  height: 14px;
  border: 2px solid;
  border-color: transparent transparent var(--color-primary) var(--color-primary);
}
.nav__item-num {
  font-size: 1.9em;
  line-height: 1.3em;
}
.nav__item-txt {
  margin-left: 0;
  font-size: 1.5em;
  font-weight: 500;
  letter-spacing: .1em;
  margin-bottom: .4em;
}
.item {
  margin: 1em 0 70px;
}
.item-ttl__txt-border {
  font-weight: 500;
  font-size: 1.5em;
  padding-bottom: 0;
  letter-spacing: .15em;
}
.item__wrapper {
  width: 1000px;
}
.item-ttl__top {
  font-weight: 500;
  font-size: 1.5em;
  padding: .1em 0;
}
.item-ttl__txt-inner {
  margin: 20px 0 15px;
}
.item__about {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
.item__about--reverse {
  flex-direction: row-reverse;
}
.item__about-txt-area--reverse {
  padding: 0 60px 0 25px !important;
}
.item-list {
  padding: 0 16px;
}
.item__about-img, .item__about-txt-area {
  width: 480px;
}
.item__about-txt-area {
  padding: 0 40px;
}
.item__about-name {
  text-align: left;
  margin-left: 0;
  padding-left: 0;
  font-weight: 500;
  font-size: 1.8em;
  letter-spacing: .08em;
  margin-bottom: 2px;
}
.item__about-copy {
  text-align: left;
  font-weight: 400;
  letter-spacing: .05em;
  margin-bottom: 14px;
  font-size: 1.4em;
}
.item__about-copy--marker {
  font-weight: 500;
}
.item__about-txt {
  padding: 0;
  font-size: 1.1em;
  font-weight: 300;
  letter-spacing: .03em;
}
.item__prod-list {
  flex-wrap: nowrap;
}
.item__prod {
  min-width: 24%;
  padding: 0 8px;
}
.item__prod-name {
  font-size: 1.25em;
  line-height: 1.5em;
  letter-spacing: .07em;
  font-weight: 500;
}
.item__prod-price {
  font-size: 110%;
}
.item__prod-btn {
  font-weight: 500;
  font-size: 1.15em;
  width: 144px;
}
.item__prod-btn:hover {
  opacity: .5;
  transition: .5s;
}
.item__prod-fewer2 {
  display: flex;
}
.item__prod-img-fewer2 {
  width: 230px;
}
.item__prod-txt-fewer2 {
  width: 200px;
  padding-left: 15px;
  position: relative;
}
.item__prod-btn--fewer2 {
  left: 15px;
}
.item__prod:nth-child(odd) {
  margin-right: 0;
}
.item__prod:nth-child(even) {
  margin-left: 0;
}
.item__btn-l {
  width: 430px;
  font-size: 18px;
  font-weight: 500;
  margin: 30px auto 70px;
  border: .12em solid rgba(var(--color-primary-rgb), 0.75);
}
.item__btn-l:hover {
  background-color: var(--color-primary);
  color: white;
  border: .12em solid var(--color-primary);
  opacity: .9;
  transition: .5s;
}
.item__btn-l:hover::after {
  content: "";
  width: .6em;
  height: .6em;
  border: 2px solid white;
  border-color: white white transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  right: 1.2em;
  bottom: 1.4em;
  transition: .5s;
}
.category {
  padding: 1em 0 4em;
}
.category__list {
  width: 700px;
}
.category__item {
  margin: 0 1% .8em 1%;
  font-size: 1.2em;
}
.category__item:hover {
  opacity: 0.6;
}
/*=== contents parts ===*/
/* common */
.flex_box {
  display: flex;
  justify-content: space-between;
  margin: auto;
}
.flex_box2 {
  display: flex;
  margin: auto;
}
.flex_box3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.flex_box_center{
  display: flex;
  justify-content: center;
  margin-left: -50px;
}
.bgt_p {
  font-size: 20px;
  margin: 0 0 25px;
}
.bgt_mr20 {
  margin-right: 20px;
}
.bgt_mb30 {
  margin-bottom: 30px;
}
.bgt_mt30 {
  margin-top: 30px;
}
.bgt_mt40 {
  margin-top: 40px;
}
.bgt_pb10 {
  padding-bottom: 10px;
}
.bgt_ta-l {
  display: table;
  text-align: left !important;
  margin: auto !important;
}
a.bgt_btn {
  position: relative;
  font-size: 24px;
  font-weight: 400;
  width: 240px;
  height: 64px;
  color: #fff;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #EB9750;
  border-radius: 40px;
}
a.bgt_btn::before {
  content: "";
  position: absolute;
  right: 25px;
  top: 2px;
  bottom: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
a.bgt_btn2, a.bgt_btn3 {
  position: relative;
  font-size: 24px;
  font-weight: 400;
  width: 445px;
  height: 64px;
  color: #fff;
  margin: 0 auto 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #B69F61;
  border-radius: 40px;
}
a.bgt_btn3 {
  background-color: #EB9750;
}
a.bgt_btn2::before, a.bgt_btn3::before {
  content: "";
  position: absolute;
  right: 25px;
  top: 2px;
  bottom: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
a.bgt_btn:hover, a.bgt_btn2:hover, a.bgt_btn3:hover {
  opacity: 0.7;
}
/* bnr */
.bgt_cp-bnr {
  width: 480px;
  margin: 0 auto 60px;
}
/*.bgt_cp-bnr {
  font-size: 37px;
  font-weight: 600;
  width: 675px;
  height: 102px;
  color: #FEED71;
  text-align: center;
  line-height: 1;
  margin: 0 auto 60px;
  background-color: #184192;
  border-radius: 35px;
}
.bgt_cp-bnr p {
  margin: 0 0 5px;
	padding: 10px 0 0;
}
.bgt_cp-bnr span {
  font-size: 23px;
  font-weight: 400;
}*/
/* topic01 */
#topic01 {
  margin: 0 0 65px;
}
.topic01box {
  padding: 20px 25px 30px;
  width: 315px;
  background: #fff;
  border: 1px solid #8CC777;
  border-radius: 30px;
}
.topic01box p.topic01title {
  font-size: 30px;
  font-weight: 600;
  text-align: center;
}
.topic01box p.topic01img img {
  margin: 20px auto;
  display: block;
}
.topic01box p.topic01txt {
  font-size: 20px;
}
.topic01box p.topic01txt span {
  color: #E8A391;
}
/* topic02 */
#topic02 {
  margin: 0 0 45px;
}
.topic02box {
  margin: 0 0 20px;
  padding: 20px 25px;
  background: #fff;
  border: 1px solid #8CC777;
  border-radius: 30px;
}
.topic02box p.topic02title {
  font-size: 30px;
  font-weight: 600;
  text-align: left;
  margin: 0 0 15px;
  display: flex;
  align-items: center;
}
.topic02box p.topic02title span {
  font-size: 20px;
  font-weight: 400;
  margin: 0 0 0 30px;
}
.topic02box p.topic02img img {
  display: block;
}
.topic02box p.topic02txt {
  font-size: 20px;
  width: 545px;
  margin: 0 20px;
}
.topic02box p.topic02txt span {
  color: #E8A391;
}
/* topic03 */
#topic03 {
  margin: 0 0 45px;
}
.topic03box {
  margin: 0 0 20px;
  padding: 20px 25px;
  background: #fff;
  border: 1px solid #8CC777;
  border-radius: 30px;
}
.topic03box p.topic03title {
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  margin: 0 0 30px;
}
.topic03box p.topic03title span {
  font-size: 20px;
  font-weight: 400;
  margin: 0 0 0 30px;
}
.topic03box p.topic03img img {
  display: block;
}
.topic03box p.topic03txt {
  font-size: 20px;
  text-align: center;
  margin: 0 0 20px;
}
.topic03box p.topic03txt span {
  color: #E8A391;
}
.topic03box p.topic03cap {
  font-size: 24px;
  text-align: center;
  margin: 0 0 10px;
}
.topic03box p.topic03txt2 {
  font-size: 20px;
  text-align: left;
  width: 540px;
  margin: 0 0 20px;
}
.topic03box.topic03ill {
  background: #fff url(../../../../img/usr/freepage/babygifttopics/topic03_ill.png) no-repeat bottom 100px right 55px;
}
/* topic04 */
#topic04 {
  margin: 0 0 65px;
}
.topic04box {
  padding: 20px 5px;
  width: 315px;
  background: #fff;
  border: 1px solid #8CC777;
  border-radius: 30px;
}
.topic04box p.topic04title {
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  margin: 0 0 15px;
}
/* topic05 */
#topic05 {
  margin: 0 0 65px;
}
.topic05box {
  padding: 20px 5px;
  width: 315px;
  background: #fff;
  border: 1px solid #8CC777;
  border-radius: 30px;
}
p.topic05img {
  width: 474px;
  margin: 20px 0 0;
}
p.topic05ill {
  text-align: center;
  margin: 30px 0 10px;
}
p.topic05txt {
  font-size: 20px;
  text-align: center;
  margin: 0 0 20px;
}
.topic06box{
  display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 25px 30px;
    width: calc(50% - 20px);
    background: #fff;
    border: 1px solid #8CC777;
    border-radius: 30px;
    margin-left: 20px;
}

.topic06title{
  font-size: 24px;
  margin-bottom: 20px;
  text-align: center;
}

.topic06title._sleeper span{
  background: linear-gradient(transparent 55%, #dae3e5 55%);
  display: inline-block;
}

.topic06title._huton span{
  background: linear-gradient(transparent 55%, #e8ddcc 55%);
  display: inline-block;
}

.topic06title._huton small{
  font-size: 0.6em;
}

p.topic06txt {
  margin: 30px 0;
  text-align: center;
}
/* topic07 */
#topic07 {
  margin: 100px 0 0;
  padding: 0 0 65px;
}