/* =========================================================
   お申し込み手順 12ステップ／本番版＋折りたたみ操作（スマートフォン専用）
   実装パック 04_signup_steps_PRODUCTION.css をそのまま移植。
   - 追加分はすべて @media (max-width:768px) の中だけに置く。
   - 769px 以上（PC版）には一切適用しない（.ic-signup-steps は display:none）。
   - グローバルセレクタ（body / h2 / p / img 等）への新規指定はしない。
========================================================= */
.ic-signup-steps { display: none; }

@media (max-width: 768px) {
/* PC用の縮小キャンバスはスマホでは隠す（HTMLからは削除しない） */
#incruises-steps .sg-viewport { display: none; }
.ic-signup-steps { display: block; }

/* =========================================================
   お申し込み手順 12ステップ - 本番版
========================================================= */
.ic-signup-steps {
  --ss-bg:#fffdf9;
  --ss-card:#ffffff;
  --ss-text:#3a251b;
  --ss-gold:#c99532;
  --ss-gold-2:#e2c58a;
  --ss-line:#ead9bd;
  --ss-soft:#fff9ef;
  background:var(--ss-bg);
  color:var(--ss-text);
  padding:26px 0 34px;
}
.ic-signup-steps *,
.ic-signup-steps *::before,
.ic-signup-steps *::after{box-sizing:border-box}
.ic-signup-steps__inner{width:min(100%,760px);margin:0 auto;padding:0 14px}
.ic-signup-steps__header{text-align:center;margin-bottom:13px}
.ic-signup-steps__ornament{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--ss-gold);margin-bottom:5px}
.ic-signup-steps__ornament span{width:76px;height:1px;background:var(--ss-gold);opacity:.8}
.ic-signup-steps__ornament i{font-style:normal;font-size:13px}
.ic-signup-steps__header h2{margin:0;font-family:var(--cruise-mincho,"Yu Mincho","Hiragino Mincho ProN",serif);font-size:31px;line-height:1.16;font-weight:700}
.ic-signup-steps__header p{margin:7px 0 0;font-size:14px;line-height:1.5}

.ic-signup-steps__jump{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;margin-bottom:14px}
.ic-signup-steps__jump button{aspect-ratio:1/1;min-width:0;border:1px solid var(--ss-line);border-radius:7px;background:#fff;color:#805d27;font-family:var(--cruise-mincho,"Yu Mincho",serif);font-size:13px;cursor:pointer}
.ic-signup-steps__jump button.is-active{background:var(--ss-gold);color:#fff;border-color:var(--ss-gold)}

.ic-step-group{border:1px solid var(--ss-gold);border-radius:8px;background:#fff;overflow:hidden;margin-bottom:9px}
.ic-step-group__head{width:100%;min-height:52px;display:grid;grid-template-columns:42px 1fr 28px;align-items:center;gap:7px;padding:7px 10px;border:0;background:#fff;color:var(--ss-text);text-align:left;cursor:pointer}
.ic-step-group__symbol{width:34px;height:34px;border:1px solid var(--ss-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ss-gold);font-size:17px}
.ic-step-group__head>span:nth-child(2){font-family:var(--cruise-mincho,"Yu Mincho",serif);font-size:19px;line-height:1.25}
.ic-step-group__chevron{justify-self:end;color:var(--ss-gold);font-size:24px}
.ic-step-group__body{border-top:1px solid var(--ss-line)}

.ic-step-row+.ic-step-row{border-top:1px solid var(--ss-line)}
.ic-step-row__head{width:100%;min-height:43px;display:grid;grid-template-columns:34px 1fr 24px;align-items:center;gap:7px;padding:5px 9px;border:0;background:#fff;color:var(--ss-text);text-align:left;cursor:pointer}
.ic-step-row__number{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ss-gold);color:#fff;font-family:var(--cruise-mincho,"Yu Mincho",serif);font-size:14px;font-weight:700}
.ic-step-row__title{font-size:16px;line-height:1.35}
.ic-step-row__chevron{justify-self:end;color:var(--ss-gold);font-size:21px}
.ic-step-row__detail{padding:8px 10px 11px;background:#fff}

.ic-step-detail{display:grid;grid-template-columns:minmax(0,44%) minmax(0,56%);gap:12px;align-items:start}
.ic-step-detail__screen{margin:0;border:1px solid #d7d0c5;border-radius:9px;background:#fff;padding:6px;overflow:hidden}
.ic-step-detail__screen img{display:block;width:100%;height:auto;max-height:440px;object-fit:contain;margin:0 auto}
.ic-step-detail__copy{font-size:14px;line-height:1.58}
.ic-step-detail__copy>p{margin:3px 0 10px}
.ic-step-warning{border:1px solid var(--ss-gold-2);border-radius:8px;background:var(--ss-soft);padding:10px}
.ic-step-warning h4{margin:0 0 6px;display:flex;align-items:center;gap:6px;font-size:14px}
.ic-step-warning h4 span{width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ss-gold);color:#fff}
.ic-step-warning ul{margin:0;padding-left:1.3em;font-size:12.5px;line-height:1.55}




/* ===== 本番改訂：折りたたみ操作 ===== */
.ic-step-collapse{
  width:100%;
  min-height:38px;
  margin-top:10px;
  border:1px solid var(--ss-gold-2);
  border-radius:8px;
  background:#fff;
  color:#7f5b22;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}
.ic-step-collapse:hover{background:#fffaf1}
.ic-step-collapse span{margin-left:5px;color:var(--ss-gold)}
.ic-step-collapse:focus-visible{
  outline:3px solid rgba(201,149,50,.25);
  outline-offset:2px;
}
}

/* 520px以下の調整（実装パック原文のまま／768px以下でしか一致しない） */
@media(max-width:520px){
  .ic-signup-steps{padding:22px 0 28px}
  .ic-signup-steps__inner{padding:0 12px}
  .ic-signup-steps__header h2{font-size:28px}
  .ic-signup-steps__header p{font-size:13px}
  .ic-signup-steps__jump{gap:4px}
  .ic-signup-steps__jump button{font-size:12px;border-radius:6px}
  .ic-step-group__head{grid-template-columns:38px 1fr 25px;min-height:48px;padding:6px 8px}
  .ic-step-group__symbol{width:31px;height:31px}
  .ic-step-group__head>span:nth-child(2){font-size:17px}
  .ic-step-row__head{min-height:40px}
  .ic-step-row__title{font-size:15px}
  .ic-step-detail{grid-template-columns:1fr;gap:9px}
  .ic-step-detail__screen img{max-height:none}
  .ic-step-detail__copy{font-size:13.5px}
}

@media(max-width:520px){
  .ic-step-collapse{min-height:36px;margin-top:8px;font-size:12.5px}
}
