@charset "UTF-8";
/*----------------------------------------------------------------- 
common form
----------------------------------------------------------------- */
input[type="text"],
input[type="password"],
textarea{padding:20px 10px; border:1px solid #fff; font-size:100%; }

input[type="checkbox"],
input[type="radio"]{ margin-right:5px; }

input[type="button"]:focus,
input[type="submit"]:focus{ outline:none; }

input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus{outline:none;  border:1px solid #ababab; }

input.myError,
textarea.myError{ background:#FFECE9; }
p.myError{display:block; clear:both; padding-top: 10px;  color:#ca2735; font-weight: bolder;}


input[type=checkbox]{
    -moz-appearance:checkbox;
         appearance:checkbox;
    -webkit-appearance: checkbox;
}
input[type=radio]{
    -moz-appearance:radio;
         appearance:radio;
    -webkit-appearance: radio;
}
textarea {
    display:block;
    width:100%;
    resize:vertical;
}

.input_auto { ime-mode: auto; }
.input_jp { ime-mode: active; }
.input_en { ime-mode: disabled; }
.input_off { ime-mode: inactive; }

/*----------------------------------------------------------------- 
common
----------------------------------------------------------------- */
.formPrivacy{overflow:scroll; margin:0 auto 30px; padding:10px 30px; height:150px;  border:1px solid #CCC; }
.linkPrivacy a{text-decoration:underline; }
.linkPrivacy a:before{margin-right: 0.5em; content:"\f105"; text-decoration:none;font-weight: 900; font-family: "Font Awesome 5 Free"; }
.linkPrivacy a:hover{text-decoration:none;opacity:1; }

.contactTableWrap{padding: 80px 100px;background: #f5f5f5; }
.contactTableWrap .txt{padding-bottom: 40px; border-bottom: 1px dashed #ababab;}

.contactTableWrap .btn{letter-spacing:0.1em; font-size:14px; font-family:"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Verdana, sans-serif;}

.hissu{display: inline-block; margin-left: 10px;padding:0 5px; height: 20px; background:#000001; color:#fff; font-size:11px; line-height: 20px; }


@media only screen and (min-width: 735px){
/*----------------------------------------------------------------- 
テーブル
----------------------------------------------------------------- */
.contactTableWrap{ margin-bottom:30px;}
.contactTableWrap .box{width: 360px;}
.contactTableWrap .box.left{float:left;}
.contactTableWrap .box.right{float:right;}
.contactTable{width: 100%;}
.contactTable th{padding: 30px 0 10px;}
.contactTable td{padding: 0;}
.contactTable th,
.contactTable td{display: block; width: 100%; text-align:left; font-weight:normal;}

/*----------------------------------------------------------------- 
フォーム
----------------------------------------------------------------- */
.inputType01{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:100%; }
.inputType02{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:75%; }
.inputType03{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:50%; }
.inputType04{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:25%; }
.inputType05{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:10%; }
.inputType06{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:70%; }
	
/*----------------------------------------------------------------- 
common button
----------------------------------------------------------------- */
.btn_form01 { height:50px; -webkit-border-radius: 3px; -moz-border-radius: 3px;border-radius: 3px; background: #665e51; text-shadow: -1px -1px 0 #665e51; font-size: 129%; line-height:50px; }
.btn_form02 { height:50px; -webkit-border-radius: 3px; -moz-border-radius: 3px;border-radius: 3px; background: #ae9b7a;  text-shadow: -1px -1px 0 #665e51; font-size: 129%; line-height:50px; }
.btn_form01 a,.btn_form02 a{ display:block; padding:0 30px; color:#FFF; text-decoration:none; }
input.btn_form01,input.btn_form02{ padding:0 20px; border:none; color:#FFF; cursor:pointer; }
input.btn_form01:hover{background: #ae9b7a;}
input.btn_form02:hover{ background:#ae9b7a; }

}
@media only screen and (max-width: 959px) {
.contactTableWrap{padding: 40px 3%;}
.contactTableWrap .txt{padding-bottom: 20px;}



/*----------------------------------------------------------------- 
テーブル
----------------------------------------------------------------- */
.contactTableWrap .box{width: 100%;}
.contactTableWrap .box.left,
.contactTableWrap .box.right{float:none;}
.contactTable{width: 100%;}
.contactTable th{padding: 10px 0 0;}
.contactTable td{padding: 10px 0;}
.contactTable th,
.contactTable td{display: block; width: 100%; text-align:left; font-weight:normal;}

/*----------------------------------------------------------------- 
フォーム
----------------------------------------------------------------- */
.inputType01{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:100%; }
.inputType02{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:75%; }
.inputType03{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:50%; }
.inputType04{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:25%; }
.inputType05{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:10%; }
.inputType06{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  width:70%; }
	
/*----------------------------------------------------------------- 
common button
----------------------------------------------------------------- */
.btn_form01 { height:50px; -webkit-border-radius: 3px; -moz-border-radius: 3px;border-radius: 3px; background: #266c43; text-shadow: -1px -1px 0 #1D5434; font-size: 129%; line-height:50px; }
.btn_form02 { height:50px; -webkit-border-radius: 3px; -moz-border-radius: 3px;border-radius: 3px; background: #8B8B8B; text-shadow: -1px -1px 0 #666666; font-size: 129%; line-height:50px; }
.btn_form01 a,.btn_form02 a{ display:block; padding:0 10px; color:#FFF; text-decoration:none; }
input.btn_form01,input.btn_form02{ padding:0 10px; border:none; color:#FFF; cursor:pointer; }

}
.fs-c-creditCardIcons{
    row-gap: 10px;
}
.propose_btn{
    border: solid 1px #000000;
      color: #ffffff;
      text-align: center;
      font-size: 22px;
      margin: 0 auto;
      width: 55%;
      background-color: #000000;
      height: 95px;
      display: flex;
      justify-content: center;
      align-items: center;
  }

  .recommendList{
    margin-bottom: 40px;
  }
  .recommendList .imgBox {
    width: 100%;
    height: 260px;
    position: relative;
    margin-bottom: 20px;
  }
  .recommendList .imgBox .btn {
    position: absolute;
    display: block;
    bottom: 20px;
    left: 50%;
    margin-left: -100px;
  }
  .recommendList .ttl {
    font-size: 16px;
    text-align: center;
    font-family: "Pontano Sans", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Verdana, sans-serif;
    font-weight: normal;
    letter-spacing: 0.05em;
    line-height: 1.4;
    margin-bottom: 10px;
  }
  .recommendList .txt {
    font-size: 12px;
  }
  @media screen and (max-width: 768px){
    .col3>li.recommendList_inner {
        width: 48%;
        margin: 10px 1%;
    }
    .recommendList .imgBox .btn {
      margin-left: -35%;
    }
    .recommendList .ttl {
        font-size: 12px;
      }
      .recommendList .txt {
        font-size: 12px;
      }
  }


.fs-c-productMark {
  box-sizing: border-box;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.fs-c-productMark__item{
  margin-right: 5px;
  width: 18px;
}

.propose-mv__copy-main.type02 {
    margin-top: .3em;
    font-size: 40px;
    font-weight: bold;
    line-height: 1.75;
}

@media only screen and (max-width: 1770px) {

    .propose-mv__copy-main.type02 {
        font-size: 30px;
    }

}

@media only screen and (max-width: 1200px) {

    .propose-mv__copy-main.type02 {
        font-size: 19px;
    }
}

@media only screen and (max-width: 768px) {
    .propose-feature.type02 {
        margin-top: 40px;
    }
}

/* =================================================================
   プロポーズLP テストページ改修（2026/10）
   対象：/c/scene/propose-test（.fs-body-category-propose-test）
================================================================= */
/* ① FV：全幅＋テキストオーバーレイ */
.fs-body-category-propose-test .propose-mv--overlay { position: relative; }
.fs-body-category-propose-test .propose-mv--overlay .propose-mv__link { display: block; position: relative; color: #fff; text-decoration: none; }
.fs-body-category-propose-test .propose-mv--overlay .propose-mv__img img { display: block; width: 100%; height: auto; }
.fs-body-category-propose-test .propose-mv--overlay .propose-mv__link::after { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .35); pointer-events: none; }
.fs-body-category-propose-test .propose-mv--overlay .propose-mv__text { position: absolute; inset: 0; z-index: 1; padding: 20px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: #fff; text-shadow: 0 2px 12px rgba(0, 0, 0, .45); }
.fs-body-category-propose-test .propose-mv--overlay .propose-mv__copy-main { margin: 0; font-size: 50px; font-weight: bold; line-height: 1.5; letter-spacing: .06em; }
.fs-body-category-propose-test .propose-mv--overlay .propose-mv__copy-sub { margin-top: .8em; font-size: 24px; font-weight: 500; letter-spacing: .1em; }
@media only screen and (max-width: 1200px) {
  .fs-body-category-propose-test .propose-mv--overlay .propose-mv__copy-main { font-size: 34px; }
  .fs-body-category-propose-test .propose-mv--overlay .propose-mv__copy-sub { font-size: 18px; }
}
@media only screen and (max-width: 768px) {
  .fs-body-category-propose-test .propose-mv--overlay .propose-mv__copy-main { font-size: 26px; }
  .fs-body-category-propose-test .propose-mv--overlay .propose-mv__copy-sub { font-size: 14px; }
}

/* ④ 人気No.1ラベル */
.fs-body-category-propose-test .propose-rank { display: inline-block; margin-bottom: 8px; padding: 2px 12px; background: #c5a05b; color: #fff !important; font-size: 13px !important; letter-spacing: .08em; }

/* 各商品のCTA（カートに入れる／詳しく見る） */
.fs-body-category-propose-test .propose-cta { display: flex; justify-content: center; gap: 16px; margin-top: 40px; }
.fs-body-category-propose-test .propose-cta a { display: flex; align-items: center; justify-content: center; width: 260px; height: 60px; border: 1px solid #c5a05b; font-size: 14px; text-decoration: none; letter-spacing: .05em; transition: opacity .2s; }
.fs-body-category-propose-test .propose-cta a:hover { opacity: .8; }
.fs-body-category-propose-test .propose-cta__cart { padding-left: 28px; background: #c5a05b url("https://rosegallery.itembox.cloud/item//xmas/cart_ico.png") 50px 50% / 20px auto no-repeat; color: #fff; }
.fs-body-category-propose-test .propose-cta__detail { background: #fff; color: #c5a05b; }
.fs-body-category-propose-test .propose-cta__detail::after { content: "→"; margin-left: .5em; }
@media only screen and (max-width: 768px) {
  .fs-body-category-propose-test .propose-cta { gap: 8px; margin-top: 30px; }
  .fs-body-category-propose-test .propose-cta a { flex: 1; width: auto; height: 50px; font-size: 13px; }
  .fs-body-category-propose-test .propose-cta__cart { padding-left: 24px; background-position: 12px 50%; background-size: 18px auto; }
}

/* ⑧ 決済・配送情報 */
.fs-body-category-propose-test .propose-payship { margin-top: 100px; }
.fs-body-category-propose-test .propose-payship__list { display: flex; gap: 40px; margin-top: 50px; }
.fs-body-category-propose-test .propose-payship__item { flex: 1; padding: 30px; border: 1px solid #c5a05b; font-size: 16px; line-height: 1.8; }
.fs-body-category-propose-test .propose-payship__title { margin: 0 0 15px; color: #c5a05b; font-size: 22px; }
.fs-body-category-propose-test .propose-payship__pay { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.fs-body-category-propose-test .propose-payship__pay li { padding: 4px 12px; border: 1px solid #ddd; font-size: 14px; }
@media only screen and (max-width: 768px) {
  .fs-body-category-propose-test .propose-payship { margin-top: 60px; }
  .fs-body-category-propose-test .propose-payship__list { flex-direction: column; gap: 20px; margin-top: 30px; }
  .fs-body-category-propose-test .propose-payship__item { padding: 20px 15px; font-size: 14px; }
  .fs-body-category-propose-test .propose-payship__title { font-size: 18px; }
  .fs-body-category-propose-test .propose-payship__pay li { font-size: 13px; }
}

/* ⑨ よくある質問 */
.fs-body-category-propose-test .propose-faq { margin-top: 100px; }
.fs-body-category-propose-test .propose-faq__list { margin-top: 50px; border-top: 1px solid #ddd; }
.fs-body-category-propose-test .propose-faq__item { padding: 25px 0; border-bottom: 1px solid #ddd; }
.fs-body-category-propose-test .propose-faq__q,
.fs-body-category-propose-test .propose-faq__a { position: relative; padding-left: 2em; line-height: 1.8; }
.fs-body-category-propose-test .propose-faq__q { margin: 0; color: #c5a05b; font-size: 18px; font-weight: bold; }
.fs-body-category-propose-test .propose-faq__a { margin: 10px 0 0; font-size: 16px; }
.fs-body-category-propose-test .propose-faq__q::before,
.fs-body-category-propose-test .propose-faq__a::before { position: absolute; left: 0; top: 0; font-weight: bold; }
.fs-body-category-propose-test .propose-faq__q::before { content: "Q."; }
.fs-body-category-propose-test .propose-faq__a::before { content: "A."; color: #151515; }
@media only screen and (max-width: 768px) {
  .fs-body-category-propose-test .propose-faq { margin-top: 60px; }
  .fs-body-category-propose-test .propose-faq__list { margin-top: 30px; }
  .fs-body-category-propose-test .propose-faq__item { padding: 20px 0; }
  .fs-body-category-propose-test .propose-faq__q { font-size: 15px; }
  .fs-body-category-propose-test .propose-faq__a { font-size: 14px; }
}
