/* --- メインビジュアル --- */
#main-visual {background:url(../img/main_pc.jpg) no-repeat top center/cover fixed;height:100vh;}
@media screen and (max-width:640px){#main-visual{background:url(../img/main_sp.jpg) no-repeat top center/contain fixed;height:50vh;}}
@media screen and (max-width:750px){#main-visual{height:40vh;}}

/* --- 全体設定 --- */
#lp {color:#333;text-align:center;background-color:rgb(245,245,241);padding-top:40px;}
#lp img {max-width:100%;margin-bottom:20px;}
.colorBk {background-color:#e4dcd6;}

/* --- レイアウト設定 --- */
.flex_Js {display:flex;flex-wrap:wrap;justify-content:flex-start;gap:20px 2%;margin:0 auto 30px;max-width:900px;}
.flex_Js.col-2 {max-width:900px;margin:0 auto 30px;justify-content:center;}
.col-2 > div {width:48%;}
.flex_Js.col-3 {max-width:700px;justify-content:center;gap:20px 5%;}
.col-3 > div {width:30%;margin-top:50px;}
.flex_Js img {width:100%;height:auto;display:block;aspect-ratio:3/4;object-fit:cover;}

/* --- アニメーション --- */
.anime img {filter:grayscale(100%);transition:all 1.5s ease 1s;transform:translateY(60px);opacity:0;}
.animeOn img {animation:anim_fuwa 1s ease-out 0.3s forwards;filter:grayscale(0);}
@keyframes anim_fuwa {0%{transform:translateY(60px);opacity:0;}100%{transform:translateY(0);opacity:1;}}
.flex_Js.col-2 .anime {width:48% !important;max-width:none;}
.flex_Js.col-3 .anime {width:30% !important;}

/* --- アイテム詳細 --- */
.item_price_center {font-size:14px;margin:0 auto 5%;font-family:'Noto Serif JP',sans-serif;}
.code_lead,.code_no {font-size:12px;margin:2%;font-family:'Noto Serif JP',sans-serif;}

/* --- lp_parts1 --- */
#lp_parts1 {margin:80px auto;max-width:800px;font-family:"Noto Serif JP",serif;line-height:1.8;letter-spacing:0.1em;color:#333;text-align:center;}
.lp_itemBox {margin:180px auto 0;}

/* --- スマホ --- */
@media screen and (max-width:640px){
  #lp_parts1 {margin:60px 20px;text-align:center;}
  .lp_itemBox {margin:50px auto 0;}
  .lp_parts5 > div {margin-top:40px;}
}

/* --- overlapレイアウト --- */
.overlap-layout {position:relative !important;display:block !important;width:100%;max-width:800px;margin:80px auto 50px !important;height:900px;}
.overlap-layout .anime:nth-child(1){position:absolute !important;top:0;left:0;width:55% !important;z-index:1;}
.overlap-layout .anime:nth-child(2){position:absolute !important;top:250px;right:0;width:55% !important;z-index:2;}
@media screen and (max-width:640px){
  .overlap-layout {height:500px;margin:60px auto 30px !important;}
  .overlap-layout .anime:nth-child(2){top:150px;}
}

/* --- BUYボタン --- */
.buy_btn2 {background:#5c5858;color:#ffffff;padding:8px 8px;font-size:12px;width:110px;margin:5% auto 10%;border-radius:4px;}

/* --- 固定ヘッダー --- */
#utility_header {position:fixed;top:0;left:0;width:100%;height:40px;background-color:#fff;display:flex;align-items:center;z-index:10000;border-bottom:1px solid #eee;box-shadow:0 2px 5px rgba(0,0,0,0.05);}
.header_content {max-width:1200px;margin:0 auto;padding:0 20px;width:100%;font-size:11px;color:#666;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media screen and (max-width:640px){
  #utility_header {height:35px;}
  .header_content {font-size:10px;}
  #lp {padding-top:35px;}
}

/* --- TOPに戻るボタン --- */
#page-top {position:fixed;bottom:20px;right:20px;z-index:10001;display:none;}
#page-top a {display:flex;align-items:center;justify-content:center;width:50px;height:50px;background-color:#000;color:#fff;text-decoration:none;border-radius:50%;font-size:14px;transition:opacity 0.3s,transform 0.3s;opacity:0.7;}
#page-top a:hover {opacity:1;transform:translateY(-5px);}

/* --- フッター --- */
#lp_parts6 {padding:50px 0;text-align:center;}
.snsicons {margin-bottom:20px;}
.icon_img {width:30px;height:auto;margin-bottom:0 !important;display:inline-block;vertical-align:middle;transition:opacity 0.3s;}
.icon_img:hover {opacity:0.6;}

/* --- テキストスタイル --- */
.chibi_text {font-size:14px;line-height:2;font-weight:400;margin:1px auto 20px;font-family:'Times New Roman',Times,serif;color:#333;}
.chibi_text_l {font-size:14px;line-height:2;font-weight:400;margin:10px auto 10px;padding:10px auto 10px;font-family:'Times New Roman',Times,serif;color:#333;text-align:left;width:90%;}
@media screen and (min-width:1024px){.chibi_text_l{width:60%;}}
.mini {font-size:22px;line-height:2;font-weight:400;margin:20px auto 20px;font-family:'Times New Roman',Times,serif;color:#333;vertical-align:baseline;}
.contents_title0 {font-size:30px;line-height:1.5;font-weight:400;margin:10px auto 15px;font-family:'Times New Roman',Times,serif;color:#333;}
.contents_title {font-size:30px;line-height:1.5;font-weight:400;margin:80px auto 5px;font-family:'Times New Roman',Times,serif;color:#333;}
.contents_title2 {font-size:24px;line-height:1.2;font-weight:400;margin:10px auto 15px;font-family:'Times New Roman',Times,serif;color:#333;}

/* --- テーブル --- */
table {width:40%;border-collapse:collapse;border-spacing:0;margin-left:auto;margin-right:auto;}
table th,table td {padding:10px 0;text-align:center;}
table tr:nth-child(odd){background-color:#e7e6df;}
@media screen and (max-width:640px){table{width:90%;}}

/* --- lp_parts5 グリッド --- */
.lp_parts5 {display:flex;flex-wrap:wrap;gap:10px;}
.lp_parts5 .anime {width:calc(25% - 10px);box-sizing:border-box;}
@media screen and (max-width:768px){
  .lp_parts5 .anime {width:calc(50% - 5px);margin-bottom:10px;}
}

a {text-decoration:none;color:inherit;}

/* --- クーポン --- */
.coupon_box {max-width:600px;margin:40px auto;padding:30px 20px;border:2px solid #333;background:#fff;font-family:'Noto Serif JP',sans-serif;}
.coupon_title {font-size:13px;letter-spacing:0.2em;margin-bottom:8px;color:#666;}
.coupon_period {font-size:13px;margin-bottom:15px;color:#333;}
.coupon_text {font-size:18px;line-height:1.8;margin-bottom:5px;color:#333;}
.coupon_off {font-size:32px;font-weight:700;font-family:'Times New Roman',Times,serif;color:#333;}
.coupon_note {font-size:11px;color:#999;margin-top:5px;}
.coupon_btn {display:inline-block;margin-top:20px;padding:10px 40px;background:#333;color:#fff;font-size:13px;letter-spacing:0.2em;font-family:'Noto Serif JP',sans-serif;border-radius:2px;transition:opacity 0.3s;}
.coupon_btn:hover {opacity:0.7;}

/* --- コーデ番号 --- */
.coord_num {font-size:15px;letter-spacing:0.3em;color:#999;margin:0 auto 10px;font-family:'Times New Roman',Times,serif;}