@charset "UTF-8";
/* ============================================================
   スターティアレイズ 約款・規約アーカイブ 共通スタイル
   スターティアテクノス コーポレートサイトのテーマに準拠。
     ネイビー #204659 ／ ゴールド #C59557 ／ 本文 #333
     見出し下線＋ゴールドの短線、約款はリスト＋日付ボタンの2カラム
   Webフォント・CDN等の外部リソースは参照しない（自己完結）。
   本家は Noto Sans JP を Google Fonts から読み込むが、ここでは
   端末にインストール済みのものを使い、無ければ標準ゴシックへ委ねる。
   ============================================================ */

html{ font-size:62.5%; }   /* 1.6rem = 16px（本家と同じ基準） */

*{ box-sizing:border-box; }

body{
  margin:0;
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;
  font-size:1.6rem;
  font-weight:500;
  line-height:1.5;
  color:#333;
  background:#fff;
  -webkit-text-size-adjust:100%;
}
a{ transition:all .3s; }

.container{ max-width:1280px; margin:0 auto; padding:0 20px; position:relative; }

/* ---- ヘッダー（本家：白背景・固定） ---- */
.header{
  position:fixed; top:0; left:0; width:100%;
  background:#fff; border-bottom:1px solid #e0e0e0; z-index:1000;
}
.header-in{
  max-width:1280px; margin:0 auto; padding:22px 2%;
  display:flex; justify-content:space-between; align-items:center; gap:20px;
}
.logo a{
  color:#204659; text-decoration:none;
  font-size:1.8rem; font-weight:bold; letter-spacing:.04em; line-height:1.3;
}
.logo .sub{ display:block; color:#666; font-size:1.1rem; font-weight:500; letter-spacing:.06em; }
.gnav ul{ display:flex; list-style:none; margin:0; padding:0; gap:28px; align-items:center; }
.gnav a{ color:#333; text-decoration:none; font-size:1.4rem; }
.gnav a:hover{ color:#C59557; }
.gnav a.current{ color:#C59557; font-weight:bold; }
.btn-contact-outline{
  display:inline-block; padding:11px 22px;
  border:1px solid #204659; border-radius:4px;
  color:#204659; text-decoration:none; font-size:1.4rem;
}
.btn-contact-outline:hover{ background:#204659; color:#fff; }

/* ---- 本文エリア ---- */
.main{ padding-top:92px; }

/* 下層ページ見出し（本家 low-heading02：グレー背景） */
.low-heading02{ background:#F4F4F4; padding:30px 0 40px; }
.breadcrumb{ display:flex; flex-wrap:wrap; list-style:none; margin:0; padding:0; gap:8px; }
.breadcrumb li{ color:#666; font-size:1.4rem; }
.breadcrumb li a{ color:#C59557; text-decoration:none; }
.breadcrumb li a:hover{ text-decoration:underline; }
.breadcrumb li:not(:last-of-type)::after{ content:"›"; margin-left:8px; color:#999; }
.page-title{ padding:32px 0 0; color:#333; font-size:4.4rem; font-weight:bold; line-height:1.3; }
.page-title span{ display:block; color:#C59557; font-size:1.4rem; margin-top:6px; letter-spacing:.08em; }
.page-desc{ margin:14px 0 0; font-size:1.6rem; line-height:2.125; color:#333; }

/* ---- セクション ---- */
.agreement-sec{ padding:0 0 120px; }

.agreement-title{
  margin:80px 0 30px; padding-bottom:15px;
  font-size:3rem; font-weight:bold; line-height:1.6;
  border-bottom:2px solid #D5D5D5; position:relative;
}
.agreement-title::after{
  content:""; position:absolute; bottom:-2px; left:0;
  width:230px; height:2px; background:#C59557;
}

/* 注意書き */
.notice{
  margin:40px 0 0; padding:26px 30px;
  background:#F4F4F4; border-left:4px solid #C59557;
  font-size:1.5rem; line-height:1.9;
}
.notice > strong{ display:block; margin-bottom:10px; font-size:1.6rem; color:#204659; }
.notice ul{ margin:12px 0 0; padding-left:1.4em; }
.notice li{ margin-bottom:.5em; }
.notice a{ color:#204659; }
.notice a:hover{ color:#C59557; }

.lead{ margin:40px 0 0; font-size:1.6rem; line-height:2.125; }

/* ---- 約款リスト（本家 agreement-list と同構造） ---- */
.agreement-listbox{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; }
.agreement-list{
  display:flex; justify-content:space-between; align-items:center;
  padding:20px 0; border-bottom:1px solid #e0e0e0; gap:20px;
}
.agreement-list-title{ margin:0; font-size:1.6rem; flex:1; }
.agreement-list-title a{ color:#333; text-decoration:none; }
.agreement-list-title a:hover{ color:#C59557; text-decoration:underline; }
.agreement-list-title .date{ display:block; margin-top:5px; color:#666; font-size:1.3rem; font-weight:400; }
.agreement-btn-wrap{ display:flex; gap:15px; flex-shrink:0; }
.agreement-btn{
  display:inline-flex; justify-content:center; align-items:center;
  width:180px; padding:10px; border-radius:4px;
  background:#333; color:#fff; text-decoration:none; font-size:1.4rem;
  border:1px solid #333;
}
.agreement-btn:hover{ background:#C59557; border-color:#C59557; }
/* 最新版へのリンクは従（白抜き）にして、当時の版と取り違えないようにする */
.agreement-btn.is-latest{ background:#fff; color:#333; border-color:#c5c5c5; }
.agreement-btn.is-latest:hover{ background:#fff; color:#C59557; border-color:#C59557; }
.agreement-btn.is-none{
  background:#fff; color:#999; border-color:#e0e0e0; cursor:default; pointer-events:none;
}

/* ---- トップの導線カード ---- */
.menu{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:30px; }
.menu a{
  display:block; padding:28px 30px; text-decoration:none; color:#333;
  border:1px solid #d5d5d5; background:#fff;
}
.menu a:hover{ border-color:#C59557; }
.menu .t{ display:block; font-size:1.8rem; font-weight:bold; color:#204659; }
.menu a:hover .t{ color:#C59557; }
.menu .d{ display:block; margin-top:8px; font-size:1.4rem; line-height:1.9; color:#666; }
.menu .u{ display:block; margin-top:12px; font-size:1.3rem; color:#888; word-break:break-all; }

.backlinks{ margin-top:50px; font-size:1.5rem; line-height:2.1; }
.backlinks a{ color:#204659; }
.backlinks a:hover{ color:#C59557; }

/* ---- フッター ---- */
.footer{ background:#204659; color:#fff; padding:44px 0; }
.footer .name{ font-size:1.6rem; font-weight:bold; margin:0 0 10px; }
.footer p{ margin:0 0 6px; font-size:1.3rem; line-height:1.9; color:#dfe6ea; }
.footer a{ color:#C59557; }
.copyright{ margin-top:22px; padding-top:18px; border-top:1px solid #3a5d70; font-size:1.2rem; }

/* ---- スマートフォン ---- */
@media screen and (max-width:768px){
  .header-in{ padding:16px 4%; flex-wrap:wrap; gap:12px; }
  .gnav ul{ gap:18px; }
  .gnav a{ font-size:1.3rem; }
  .btn-contact-outline{ padding:8px 14px; font-size:1.3rem; }
  .main{ padding-top:120px; }

  .breadcrumb li{ font-size:1.2rem; }
  .page-title{ padding-top:24px; font-size:2.8rem; }
  .page-desc{ font-size:1.5rem; }

  .agreement-sec{ padding:0 0 80px; }
  .agreement-title{ margin-top:50px; font-size:2.2rem; }
  .agreement-title::after{ width:140px; }

  .notice{ padding:20px; font-size:1.4rem; }

  .agreement-list{ flex-direction:column; align-items:stretch; gap:14px; }
  .agreement-btn-wrap{ flex-direction:row; gap:10px; }
  .agreement-btn{ width:100%; }

  .menu{ grid-template-columns:1fr; gap:14px; }
}
