@charset "utf-8";
/* ------------------------------
#gift
------------------------------ */
/* setting
------------------------------ */
.pc-only {
  display: block !important;
}
.sp-only {
  display: none !important;
}
#gift h1, #gift h2, #gift h3, #gift h4 {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
}
#gift img {
  vertical-align: bottom;
}
a:has(> img):hover {
  opacity: .7;
}
@media screen and (max-width: 800px) {
  .pc-only {
    display: none !important;
  }
  .sp-only {
    display: block !important;
  }
  #gift img {
    height: auto;
  }
}
/* contents
------------------------------ */
/* -----common----- */
#gift {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 1px;
  background: #F8F3EC;
}
main#gift > div {
  width: auto;
}
[id^="sec0"] {
  max-width: 1174px;
  margin: auto;
}
.sec_inner {
  width: 587px;
  margin: 0 auto;
}
#gift h2.common_heading_bg {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 163px;
  margin: auto;
  background: #A59875;
  border-radius: 30px 30px 0 0;
}
#gift #sec01 h2.common_heading_bg {
  height: 190px;
  background: #a8b091;
}
#gift h3.common_heading_h3 {
  text-align: center;
  margin-bottom: 35px;
}
#gift h3.common_heading_h3 img {
  margin: auto;
}
@media screen and (max-width: 800px) {
  .pane-main {
    padding-bottom: 30px;
  }
  /*#gift {
    background: url(/img/usr/freepage/gift/bg_sp.jpg) no-repeat top center;
    background-size: 100% 100%;
  }*/
  .sec_inner {
    width: calc(100% - 40px);
    margin: auto;
  }
  #gift h2.common_heading_bg img {
    width: auto;
    height: calc(90 * (100vw / 390));
    margin: 0 auto 25px;
  }
  #gift #sec01 h2.common_heading_bg img {
    height: calc(110 * (100vw / 390));
  }
  /*#gift #sec03 h2.common_heading_bg img {
    width: calc(180 * (100vw / 390));
  }
  #gift #sec04 h2.common_heading_bg img {
    width: calc(280 * (100vw / 390));
  }
  #gift #sec05 h2.common_heading_bg img {
    width: calc(260 * (100vw / 390));
  }*/
  #gift #sec06 h2.common_heading_bg img {
    /*width: calc(300 * (100vw / 390));*/
    margin: auto;
  }
  #gift h3.common_heading_h3 {
    margin-bottom: 30px;
  }
  #gift h3.common_heading_h3 img {
    width: calc(150 * (100vw / 390));
  }
  #gift .engraving_box h3.common_heading_h3 img {
    width: calc(134 * (100vw / 390));
  }
}
/* review */
#gift .common_review_box h3 {
  font-size: 20px;
  font-weight: 400;
  text-align: center;
  line-height: 2;
  margin-bottom: 25px;
}
.common_review_box h3 span {
  display: block;
  color: #614B17;
}
@media screen and (max-width: 800px) {
  #gift .common_review_box h3 {
    margin-bottom: 22px;
  }
}
/* explanation */
.common_ex_box {
  margin: 50px auto 40px;
  padding: 0 15px 30px;
  border: 1px dashed #A59875;
}
#gift .common_ex_box h3 {
  display: table;
  margin: -13px auto 20px;
  font-size: 15px;
  font-weight: 600;
  color: #614B17;
  text-align: center;
  padding: 2px 15px;
  background: #F8F3EC;
}
.common_ex_box p {
  font-size: 15px;
  font-weight: 400;
  text-align: center;
}
.common_ex_box p span {
  color: #977421;
}
@media screen and (max-width: 800px) {
  .common_ex_box {
    margin: 45px auto 30px;
  }
  .common_ex_box p {
    letter-spacing: 0;
  }
  .common_ex_box p span {
    display: block;
  }
}
/* -----mv----- */
#gift .mv_area h2 {
  display: table;
  margin: 0 auto 38px;
}
@media screen and (max-width: 800px) {
  #gift .mv_area h2 {
    margin: 0 auto 30px;
  }
}
/* -----navi----- */
/*.bg01 {
  background: url(/img/usr/freepage/gift/bg01.png) no-repeat top 35px center;
}*/
.navi_area {
  margin-bottom: 95px;
}
.navi_area ul {
  display: flex;
  width: 918px;
  height: 53px;
  margin: 0 auto 40px;
  border: 1px solid #614B17;
  box-sizing: border-box;
}
.navi_area ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc((100% - 3px) / 4);
  font-size: 15px;
  font-weight: 400;
  color: #614B17;
  text-align: center;
  padding: 10px 0;
}
.navi_area ul li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #614B17;
  line-height: 1.3;
  text-decoration: none;
  border-right: 1px solid #614B17;
}
.navi_area ul li:last-child a {
  border-right: none;
}
.navi_area ul li a::after {
  position: absolute;
  content: "";
  top: 47%;
  right: 5px;
  transform: translateX(-50%);
  display: block;
  width: 10px;
  height: 6px;
  background: url(/img/usr/freepage/gift/icon_navi_arrow.png) no-repeat top center;
  background-size: 10px auto;
}
.navi_area ul li a:hover {
  opacity: .7;
}
.navi_area p {
  font-size: 15px;
  font-weight: 400;
  color: #614B17;
  text-align: center;
  line-height: 2.3;
}
@media screen and (max-width: 800px) {
  /*.bg01 {
    background: none;
  }*/
  .navi_area {
    margin-bottom: 55px;
  }
  .navi_area ul {
    width: calc(100% - 40px);
    height: auto;
    margin: 0 auto 30px;
    position: relative;
    flex-wrap: wrap;
  }
  .navi_area ul::after {
    position: absolute;
    content: "";
    top: 52px;
    left: 10px;
    display: block;
    width: calc(100% - 20px);
    height: 1px;
    background: #614B17;
  }
  .navi_area ul li {
    width: calc((100% - 1px) / 2);
    height: 52px;
  }
  .navi_area ul li:nth-child(2n) a {
    border-right: none;
  }
  .navi_area ul li a::after {
    top: 46%;
    right: 10px;
  }
}
/* -----sec01----- */
/* goods */
.set_box {
  margin: -28px auto 74px;
  padding: 16px 0 20px;
  text-align: center;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
}
.set_box figure {
  margin-bottom: 17px;
}
#gift .set_heading {
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 4px;
}
.set_price {
  font-size: 18px;
  font-weight: 500;
}
.set_price .set_tax {
  font-size: 13px;
}
.set_star {
  display: table;
  margin: 0 auto 20px;
}
.set_box p {
  font-size: 15px;
  font-weight: 300;
  margin-bottom: 9px;
}
a.set_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 316px;
  height: 50px;
  margin: auto;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
  color: #614B17;
  border: 1px solid #614B17;
  border-radius: 29px;
}
a.set_btn:hover {
  opacity: .7;
}
@media screen and (max-width: 800px) {
  .set_box {
    margin: -36px auto 74px;
    padding: 16px 15px 20px;
  }
  a.set_btn {
    width: 100%;
  }
}
/* reason */
.reason_box {
  margin-bottom: 67px;
}
.reason_box figure {
  margin-bottom: 38px;
}
.reason_list {
  display: table;
  margin: auto;
}
.reason_list li {
  display: flex;
  align-items: center;
  font-size: 22px;
  font-weight: 600;
  color: #614B17;
  margin-bottom: 15px;
}
.reason_list li:last-child {
  margin-bottom: 0;
}
.reason_list li span {
  margin-right: 22px;
}
@media screen and (max-width: 800px) {
  .reason_box {
    margin-bottom: 52px;
  }
  .reason_box figure {
    margin-bottom: 30px;
  }
  .reason_box figure img {
    width: calc(100% - 72px);
    margin: 0 36px;
  }
  .reason_list li {
    font-size: 16px;
    margin-bottom: 11px;
  }
  .reason_list li span {
    margin-right: 16px;
    width: 52px;
    flex-shrink: 0;
  }
}
/* bnr */
.bnr_box {
  margin-bottom: 80px;
}
#gift .bnr_box h4 {
  font-size: 20px;
  font-weight: 600;
  color: #614B17;
  text-align: center;
  margin-bottom: 22px;
}
@media screen and (max-width: 800px) {
  .bnr_box {
    margin-bottom: 55px;
  }
  #gift .bnr_box h4 {
    font-size: 15px;
  }
}
/* -----sec02,sec03----- */
/*.bg02 {
  background: url(/img/usr/freepage/gift/bg02.png) no-repeat top center;
}*/
#sec02 {
  margin-bottom: 160px;
  padding-top: 44px;
}
#sec03 {
  margin-bottom: 68px;
}
@media screen and (max-width: 800px) {
  /*.bg02 {
    background: none;
  }*/
  #sec02 {
    margin-bottom: 78px;
    padding-top: 25px;
  }
}
/* engraving */
.engraving_txt {
  text-align: center;
}
#gift .eng_heading {
  font-size: 15px;
  font-weight: 400;
}
.eng_price {
  display: block;
  font-size: 17px;
  font-weight: 500;
  margin-bottom: 22px;
}
.eng_tax {
  font-size: 13px;
}
.engraving_txt p {
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 18px;
}
a.eng_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 330px;
  height: 50px;
  margin: auto;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
  color: #614B17;
  background: #fff;
  border: 1px solid #614B17;
  border-radius: 29px;
}
a.eng_btn:hover {
  opacity: .7;
}
@media screen and (max-width: 800px) {
  .engraving_box figure img {
    width: calc(100% - 72px);
    margin: 0 36px;
  }
  a.eng_btn {
    width: calc(100% - 60px);
    margin: 0 30px;
  }
}
/* price */
.price_box {
  margin: -28px auto 0;
  text-align: center;
}
.price_box figure {
  margin-bottom: 30px;
}
.price_list li {
  margin-bottom: 10px;
}
.price_list li:last-child {
  margin-bottom: 0;
}
.price_list li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 440px;
  height: 50px;
  margin: auto;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
  color: #614B17;
  background: #fff;
  border: 1px solid #614B17;
  border-radius: 29px;
}
.price_list li a:hover {
  opacity: .7;
}
@media screen and (max-width: 800px) {
  .price_box {
    margin: -36px auto 0;
  }
  .price_box figure {
    margin-bottom: 40px;
  }
  .price_list li a {
    width: 100%;
  }
}
/* -----sec04----- */
#sec04 {
  padding-bottom: 60px;
}
/* wrapping */
.wrapping_box {
  margin: -28px auto 0;
  text-align: center;
}
.wrapping_box figure {
  margin-bottom: 30px;
}
.wrapping_box p {
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 47px;
}
.wrapping_item {
  position: relative;
  padding: 15px 0 10px;
  text-align: center;
  min-height: 290px;
  background: #fff;
}
#gift .wrapping_item h3 {
  font-size: 15px;
  font-weight: 600;
  color: #614B17;
  margin-bottom: 15px;
}
#gift .wrapping_item figure {
  position: relative;
  display: table;
  width: 360px;
  min-height: 270px;
  margin: 25px auto;
}
/*#gift .wrapping_item figure::before {
  position: absolute;
  top: -15px;
  right: -60px;
  content: '';
  display: inline-block;
  width: 79px;
  height: 57px;
  background: url(/img/usr/freepage/gift/wrapping_item_heading.png) no-repeat top center;
  background-size: 79px auto;
}*/
#gift .wrapping_item figure img {
  width: 360px;
  height: auto;
}
.wrapping_item_title {
  position: absolute;
  bottom: 0;
  width: 100%;
  font-size: 14px;
  font-weight: 600;
  padding: 10px;
  background: #EBE3CF;
}
@media screen and (max-width: 800px) {
  .wrapping_box {
    margin: -36px auto 0;
  }
  .wrapping_box figure {
    margin-bottom: 23px;
  }
  .wrapping_box p {
    margin-bottom: 33px;
  }
  .wrapping_item {
    padding: 15px 0 5px;
  }
  .wrapping_item_title {
    font-size: 12px;
    padding: 5px;
    letter-spacing: 0;
  }
  #gift .wrapping_item figure {
    width: calc(330 * (100vw / 390));
    min-height: calc(150 * (100vw / 390));
    margin-top: 20px;
  }
  /*#gift .wrapping_item figure::before {
    top: -45px;
    right: 10px;
  }*/
  #gift .wrapping_item figure img {
    width: 80%;
    height: auto;
  }
}
/* -----sec05----- */
#sec05 {
  margin-bottom: 100px;
}
.other_list {
  position: relative;
  width: 100%;
  margin: -28px auto 74px;
}
.other_list .other_list_item {
  width: 584px;
  margin: 0 13px;
  padding: 16px 0 20px;
  text-align: center;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
}
.other_list .other_list_item p {
  font-size: 15px;
  font-weight: 600;
}
.other_list .other_list_item figure img {
  margin: auto;
}
#gift .other_heading {
  font-size: 15px;
  font-weight: 400;
}
.other_price {
  display: block;
  font-size: 26px;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 15px;
}
.other_price .other_tax {
  font-size: 18px;
}
a.other_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 272px;
  height: 39px;
  margin: auto;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
  color: #614B17;
  border: 1px solid #614B17;
  border-radius: 20px;
}
a.other_btn:hover {
  opacity: .7;
}
@media screen and (max-width: 800px) {
  #sec05 {
    margin-bottom: 90px;
  }
  .other_list {
    margin: -34px auto 74px;
  }
  .other_list .other_list_item {
    width: calc(330 * (100vw / 390));
    margin: 0 30px;
    padding: 23px 30px;
  }
  .other_list .other_list_item p {
    font-size: 12px;
  }
  .other_list .other_list_item figure img {
    margin: auto;
  }
  #gift .other_heading {
    font-size: 12px;
  }
  .other_price {
    font-size: 17px;
  }
  .other_price .other_tax {
    font-size: 12px;
  }
  a.other_btn {
    width: 100%;
  }
}
/* ---slick--- */
.other_list .slick-list.draggable {
  padding-bottom: 10px !important;
}
.other_list .slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 35px;
  height: 35px;
  font-size: 0;
  z-index: 1;
  border: none;
  background: transparent;
  cursor: pointer;
}
.other_list .slick-prev {
  left: 275px;
}
.other_list .slick-next {
  right: 275px;
}
.other_list .slick-prev:hover, .other_list .slick-next:hover {
  opacity: .7;
}
.other_list .slick-prev::after, .other_list .slick-next::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 35px;
  height: 35px;
}
.other_list .slick-prev::after {
  /*left: calc(50% + 1px);
  border-left: 2px solid #b4b4b4;
  border-bottom: 2px solid #b4b4b4;
  transform: translate(-50%, -50%) rotate(45deg);*/
  background: url(/img/usr/freepage/gift/icon_slider_l.png) no-repeat top center;
}
.other_list .slick-next::after {
  /*left: calc(50% - 1px);
  border-top: 2px solid #b4b4b4;
  border-right: 2px solid #b4b4b4;
  transform: translate(-50%, -50%) rotate(45deg);*/
  background: url(/img/usr/freepage/gift/icon_slider_r.png) no-repeat top center;
}
.other_list .slick-dots {
  position: absolute;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 15px;
  margin: 30px 0 0;
}
.other_list .slick-dots li {
  height: 15px;
  line-height: 0;
}
.other_list .slick-dots li button {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  font-size: 0;
  margin: 0 5px;
  background: transparent;
  border: 1px solid #614B17;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.other_list .slick-dots li.slick-active button {
  background: #614B17;
}
/* reset */
.other_list.slick-slider .slick-dots li {
  text-indent: unset;
  overflow: unset;
}
/* 読み込みレイアウト表示調整 */
.other_list {
  opacity: 0;
  transition: opacity .9s linear;
}
.other_list.slick-initialized {
  opacity: 1;
}
@media screen and (max-width: 800px) {
  .other_list .slick-prev {
    left: 14px;
  }
  .other_list .slick-next {
    right: 14px;
  }
}
/* -----sec06----- */
#sec06 {
  padding-bottom: 100px;
}
@media screen and (max-width: 800px) {
  #sec06 {
    padding-bottom: 50px;
  }
}
/* qa */
.qa_list {
  font-size: 15px;
  font-weight: 400;
  margin: 50px 45px 0;
}
.qa_list dt, .qa_list dd {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}
.qa_list dd {
  padding-bottom: 25px;
  border-bottom: 1px solid #eee1cf;
}
.qa_list dt img, .qa_list dd img {
  margin-right: 22px;
}
.qa_list a {
  color: #A59875;
}
@media screen and (max-width: 800px) {
  .qa_list {
    font-size: 12px;
    margin: 25px 20px 0;
  }
  .qa_list dt {
    margin-bottom: 20px;
  }
  .qa_list dd {
    margin-bottom: 30px;
  }
  .qa_list dd:last-of-type {
    margin-bottom: 0;
  }
  .qa_list dt img, .qa_list dd img {
    margin-right: 16px;
  }
}
/* -----revico----- */
#revico-item1 {
  margin-bottom: 104px;
}
#revico-item2 {
  margin-bottom: 84px;
}
.set_star .revico-star .revico-star-block {
  transform: scale(0.8);
  transform-origin: unset;
}
/* slick reset */
.revico-review-box .slick-list {
  padding-bottom: 10px !important;
}
.revico-review-box .slick-dots {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 15px;
  margin: 30px 0 0;
}
.revico-review-box .slick-dots li {
  height: 15px;
  line-height: 0;
  text-indent: unset;
  overflow: unset;
}
.revico-review-box .slick-dots li button {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  font-size: 0;
  margin: 0 4px;
  background: transparent;
  border: 1px solid #614B17;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.revico-review-box .slick-dots li.slick-active button {
  background: #614B17;
}