@charset "utf-8";
/* common
##################################### */
.lp_cont * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.lp_cont {
  width: 100%;
  margin: 30px auto 50px;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-weight: normal;
  font-size: 18px;
  letter-spacing: .1em;
  background: #fff;
  color: #333;
  box-sizing: border-box;
  line-height: 1.8;
}
.lp_cont a:hover {
  opacity: unset;
}
.lp_cont img {
  max-width: 100%;
  height: auto;
}
.bold {
  font-weight: bold;
}
.text_right {
  text-align: right;
}
.small_txt {
  font-size: 10px;
}
.font_fredoka {
  font-family: 'Fredoka', sans-serif;
}
.font_colorM {
  color: #c47063;
}
.font_colorD {
  color: #617aab;
}
/* btn
  ##################################### */
.btn_hover {
  position: relative;
  display: block;
  margin: auto;
  width: 100%;
  padding: 45px 0;
  color: #fff;
  background-color: #fff;
  border-radius: 80px;
  line-height: 1;
  text-align: center;
  font-size: 30px;
  transition: all .2s ease;
}
.btn_hover:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
}
#motherday .btn_hover {
  background-color: #c47063;
  border: 2px solid #c47063;
}
#fatherday .btn_hover {
  background-color: #617aab;
  border: 2px solid #617aab;
}
#motherday .btn_hover:hover {
  color: #c47063;
  background-color: #fff;
}
#fatherday .btn_hover:hover {
  color: #617aab;
  background-color: #fff;
}
.btn_hover .arrow {
  position: relative;
  font-size: 0 !important;
  color: #fff;
}
.btn_hover .arrow::before {
  content: "";
  position: absolute;
  top: -13px;
  right: -140px;
  width: 15px;
  height: 15px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  border-radius: 1px;
  transition: all .2s ease;
}
.btn_hover:hover .arrow::before {
  right: -150px;
}
#motherday .btn_hover:hover .arrow::before {
  border-top: 2px solid #c47063;
  border-right: 2px solid #c47063;
}
#fatherday .btn_hover:hover .arrow::before {
  border-top: 2px solid #617aab;
  border-right: 2px solid #617aab;
}
@media only screen and (max-width: 768px) {
  .btn_hover {
    font-size: 16px;
    padding: 20px 0;
  }
  .btn_hover .arrow::before {
    top: -8px;
    right: -70px;
    width: 10px;
    height: 10px;
  }
  .btn_hover:hover .arrow::before {
    right: -80px;
  }
}
/* mv
  ##################################### */
.mv {
  position: relative;
}
.mv_linklist {
  position: absolute;
  left: 0;
  bottom: 210px;
  width: 100%;
}
.mv_linkBtn {
  display: grid;
  gap: 40px;
  margin: 0 40px;
}
.mv_linkBtn .page_hover {
  position: relative;
  display: block;
  margin: auto;
  width: 100%;
  padding: 25px 45px 25px 0;
  color: #fff;
  background-color: #fff;
  border-radius: 80px;
  line-height: 1.5;
  text-align: center;
  font-size: 24px;
  transition: all .2s ease;
}
.mv_linkBtn .mombtn .page_hover {
  border: 2px solid #c47063;
  background-color: #c47063;
}
.mv_linkBtn .dadbtn .page_hover {
  border: 2px solid #617aab;
  background-color: #617aab;
}
.mv_linkBtn .mombtn .page_hover:hover {
  color: #c47063;
  background-color: #fff;
}
.mv_linkBtn .dadbtn .page_hover:hover {
  color: #617aab;
  background-color: #fff;
}
.mv_linkBtn .page_hover .arrow {
  position: relative;
  font-size: 0 !important;
  color: #fff;
}
.mv_linkBtn .page_hover .arrow::before {
  content: "";
  position: absolute;
  top: -40px;
  right: -135px;
  width: 37px;
  height: 37px;
  background-repeat: no-repeat;
  background-size: cover;
  transition: all .2s ease;
}
.mv_linkBtn .mombtn .page_hover .arrow::before {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/mother_btn_arrow_off.png);
}
.mv_linkBtn .mombtn .page_hover:hover .arrow::before {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/mother_btn_arrow_on.png);
}
.mv_linkBtn .dadbtn .page_hover .arrow::before {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/father_btn_arrow_off.png);
}
.mv_linkBtn .dadbtn .page_hover:hover .arrow::before {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/father_btn_arrow_on.png);
}
.mv_message {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: -200px;
  z-index: 9;
}
/* contants
  ##################################### */
.lp_main {
  padding-top: 130px;
  overflow: hidden;
}
.sec_wrap {
  padding-bottom: 200px;
}
.top_wrap {
  position: relative;
  z-index: 0;
  margin-bottom: 70px;
}
.top_wrap::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  z-index: -1;
}
.top_catch .catch1 {
  font-size: 26px;
  color: #fff;
  letter-spacing: .2em;
  line-height: 2;
  margin-top: 45px;
}
.top_catch .catch2 {
  margin-top: 15px;
}
.item_list {
  padding-top: 160px;
}
.item_topimg {
  margin-bottom: 80px;
}
.item_topimg .img_l {
  margin-right: 40px;
}
.item_topimg .img_r {
  margin-left: 40px;
}
.item_desc {
  position: relative;
  margin: 0 40px 65px;
  z-index: 0;
}
.item_desc .ttl {
  font-size: 48px;
  line-height: 1.6;
  margin-bottom: 15px;
}
.item_desc .ttl .category {
  display: inline-block;
  border: 1px solid;
  padding: 2px 15px;
  margin-bottom: 10px;
  font-size: 24px;
}
.item_desc .ttl .ss {
  font-size: 24px;
}
.item_desc .ttl .ss2 {
  font-size: 18px;
}
.item_desc .txt {
  line-height: 2;
  margin-bottom: 30px;
}
.item_desc .price {
  font-size: 38px;
  line-height: 1;
}
.item_desc .price .tax {
  font-size: 20px;
  vertical-align: middle;
  display: inline-block;
  margin-bottom: 5px;
}
.item_desc .deco {
  position: absolute;
}
.item_linkbtn {
  margin: 0 150px;
}
/* mother */
#motherday {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/bg_pt_pink.png);
  background-repeat: repeat;
}
#motherday.sec_wrap {
  margin-top: -70px;
}
#motherday .top_wrap:after {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/mother_topbg.png);
  padding-top: 116.69999%;
}
.mom_select2 .desc, .mom_select4 .desc {
  margin-left: auto;
}
/* father */
#fatherday {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/bg_pt_blue.png);
  background-repeat: repeat;
}
#fatherday .top_wrap:after {
  background-image: url(https://gigaplus.makeshop.jp/nishihara01/_gift/mothersday_fathersday/father_topbg.png);
  padding-top: 107.69999%;
}
.dad_select2 .desc, .dad_select4 .desc {
  margin-left: auto;
}
.dad_select3 .item_desc .ttl, .dad_select4 .item_desc .ttl {
  line-height: 1.2;
}
/*=====================================*/
/* PC */
/*=====================================*/
@media only screen and (min-width: 769px) {
  .sp_only {
    display: none !important;
  }
  .lp_cont {
    max-width: 960px;
  }
  /* CONTENTS */
  .mv_linkBtn {
    grid-template-columns: repeat(2, 1fr);
  }
  .top_icon, .item_desc .pac {
    position: absolute;
  }
  .item_desc .desc {
    width: 450px;
  }
  /* mother */
  #motherday .top_catch .catch1 {
    text-align: right;
    margin-right: 50px;
  }
  #motherday .top_catch .catch2 {
    text-align: right;
    margin-right: 60px;
  }
  #motherday .top_catch .catch2 img {
    width: 242px;
  }
  #motherday .top_icon {
    width: 351px;
    left: 40px;
    bottom: -20px;
  }
  .mom_select1 .pac {
    top: -20px;
    right: -80px;
    width: 485px;
  }
  .mom_select1 .deco {
    bottom: -35px;
    right: -42px;
    width: 210px;
  }
  .mom_select2 .pac {
    top: -20px;
    left: -25px;
    width: 445px;
  }
  .mom_select2 .deco {
    bottom: 0;
    left: -39px;
    width: 115px;
  }
  .mom_select3 .pac {
    top: -20px;
    right: -100px;
    width: 520px;
  }
  .mom_select3 .deco {
    bottom: -15px;
    right: -42px;
    width: 150px;
  }
  .mom_select4 .pac {
    top: -20px;
    left: -70px;
    width: 480px;
  }
  .mom_select4 .deco {
    bottom: -30px;
    left: -40px;
    width: 138px;
  }
  /* father */
  #fatherday .top_catch .catch1, #fatherday .top_catch .catch2 {
    margin-left: 40px;
  }
  #fatherday .top_catch .catch2 img {
    width: 243px;
  }
  #fatherday .top_icon {
    width: 386px;
    right: 40px;
    bottom: -20px;
  }
  .dad_select1 .pac {
    top: -20px;
    right: -70px;
    width: 485px;
  }
  .dad_select1 .deco {
    bottom: -45px;
    right: -42px;
    width: 170px;
  }
  .dad_select2 .pac {
    top: -20px;
    left: -20px;
    width: 440px;
  }
  .dad_select2 .deco {
    bottom: -50px;
    left: -39px;
    width: 140px;
  }
  .dad_select3 .pac {
    top: -20px;
    right: -100px;
    width: 520px;
  }
  .dad_select3 .deco {
    bottom: -15px;
    right: -42px;
    width: 170px;
  }
  .dad_select4 .pac {
    top: -20px;
    left: -80px;
    width: 490px;
  }
  .dad_select4 .deco {
    bottom: 0;
    left: -40px;
    width: 130px;
  }
}
/*=====================================*/
/* スマホ */
/*=====================================*/
@media only screen and (max-width: 768px) {
  .inner_control {
    padding: 0 0 50px;
  }
  .pc_only {
    display: none !important;
  }
  .lp_cont {
    font-size: 14px;
  }
  /* CONTENTS */
  .lp_main {
    padding-top: 50px;
  }
  .sec_wrap {
    padding-bottom: 130px;
  }
  .mv_linklist {
    bottom: 100px;
  }
  .mv_linkBtn {
    margin: 0 20px;
    gap: 25px;
  }
  .mv_linkBtn .page_hover {
    padding: 20px 20px 20px 0;
    font-size: 18px;
  }
  .mv_linkBtn .page_hover .arrow::before {
    top: -15px;
    right: -35px;
    width: 25px;
    height: 25px;
  }
  .mv_message {
    bottom: -100px;
  }
  .top_icon {
    margin: -40px auto 0;
    width: 55vw;
  }
  .top_catch .catch1 {
    font-size: 18px;
    margin-top: 30px;
    text-align: center;
  }
  .top_catch .catch2 {
    text-align: center;
  }
  .item_list {
    padding-top: 70px;
  }
  .item_topimg {
    margin-bottom: 40px;
  }
  .item_desc {
    margin: 0 20px 30px;
  }
  .item_desc .ttl {
    font-size: 26px;
    text-align: center;
  }
  .item_desc .ttl .category {
    font-size: 16px;
  }
  .item_desc .ttl .ss2 {
    font-size: 14px;
  }
  .item_desc .ttl .ss {
    font-size: 18px;
  }
  .item_desc .txt {
    margin-bottom: 20px;
  }
  .item_desc .price {
    font-size: 24px;
    text-align: left;
  }
  .item_desc .price .tax {
    font-size: 14px;
    margin-bottom: 3px;
  }
  .item_desc .pac {
    width: 90%;
    margin: 0 auto;
  }
  .item_desc .desc {
    margin-bottom: 30px;
  }
  .item_desc .deco {
    z-index: -1;
  }
  .item_linkbtn {
    margin: 0 20px;
  }
  .item_topimg .img_l {
    margin-right: 20px;
  }
  .item_topimg .img_r {
    margin-left: 20px;
  }
  /* mother */
  #motherday {
    background-size: 32% auto;
  }
  #motherday.sec_wrap {
    padding-top: 70px;
    padding-bottom: 80px;
  }
  #motherday .top_wrap:after {
    padding-top: 180.69999%;
  }
  #motherday .top_catch .catch2 img {
    width: 175px;
  }
  .mom_select1 .deco {
    bottom: 190px;
    right: -70px;
    width: 160px;
  }
  .mom_select2 .deco {
    bottom: 0;
    left: -23px;
    width: 90px;
  }
  .mom_select3 .deco {
    bottom: 160px;
    right: -42px;
    width: 120px;
  }
  .mom_select4 .deco {
    bottom: -8px;
    left: -40px;
    width: 90px;
  }
  /* father */
  #fatherday {
    background-size: 32% auto;
  }
  #fatherday .top_wrap:after {
    padding-top: 169.69999%;
  }
  #fatherday .top_icon {
    width: 58vw;
  }
  #fatherday .top_catch .catch2 img {
    width: 175px;
  }
  .dad_select1 .deco {
    bottom: 220px;
    right: -32px;
    width: 125px;
  }
  .dad_select2 .deco {
    bottom: -20px;
    left: -39px;
    width: 90px;
  }
  .dad_select3 .deco {
    bottom: -15px;
    right: -42px;
    width: 130px;
  }
  .dad_select4 .deco {
    bottom: -20px;
    left: -33px;
    width: 83px;
  }
}