@charset "UTF-8";

/* ==========================================
   個人情報保護方針・情報セキュリティページ専用スタイル
   ========================================== */

/* レイアウト調整 */
.privacy-wrapper {
   padding: 80px 0 120px;
   background-color: #f5f5f7;
   /* 背景色：薄いグレー */
}

@media screen and (max-width: 768px) {
   .privacy-wrapper {
      padding: 40px 0 80px;
   }
}

/* ------------------------------------------
   メインコンテンツのデザイン
   ------------------------------------------ */
.privacy-box {
   /* 背景色なし・影なし・余白なし */
   background: transparent;
   box-shadow: none;
   padding: 0;
   border-radius: 0;

   /* 中央配置用 */
   max-width: 900px;
   margin: 0 auto;
}

/* 見出しスタイル（修正版） */
.privacy-heading-lv2 {
   /* 中央寄せ・左線なし */
   text-align: center;
   border-left: none;
   padding-left: 0;

   /* 指定のフォントスタイル */
   font-size: clamp(1.5rem, 3vw, 2rem);
   font-weight: 700;
   color: #003366;

   margin-bottom: 40px;
   line-height: 1.4;
}

@media screen and (max-width: 768px) {
   .privacy-heading-lv2 {
      margin-bottom: 30px;
   }
}

/* テキストスタイル */
.privacy-text {
   font-size: 16px;
   line-height: 1.8;
   color: #333;
   margin-bottom: 30px;
   /* テキストも中央寄せにするか不明でしたので、現状は左寄せのままにしています。
       もしテキストも中央寄せが良い場合は text-align: center; を追加してください */
}

/* リンクエリア */
.privacy-link-area {
   margin-top: 20px;
   /* リンク全体を中央に寄せる場合 */
   /* text-align: center; */
}

/* リンク本体 */
.privacy-external-link {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   color: #004098;
   font-weight: 600;
   text-decoration: underline;
   transition: opacity 0.3s;
}

.privacy-external-link:hover {
   opacity: 0.7;
   text-decoration: none;
}

.privacy-external-link .external-icon {
   display: flex;
   align-items: center;
}

/* 注釈テキスト */
.privacy-link-note {
   font-size: 13px;
   color: #666;
   margin-top: 8px;
   line-height: 1.5;
}


/* ------------------------------------------
   個人情報保護方針 固有スタイル
   ------------------------------------------ */

/* 番号付きリスト */
.privacy-list {
   margin: 30px 0 50px;
   padding-left: 1.5em;
   /* 番号のスペース確保 */
   counter-reset: privacy-counter;
   list-style: none;
   /* デフォルトの番号を消してカスタム */
}

.privacy-list li {
   position: relative;
   padding-left: 1em;
   margin-bottom: 20px;
   line-height: 1.8;
   color: #333;
}

.privacy-list li::before {
   content: counter(privacy-counter) ". ";
   counter-increment: privacy-counter;
   position: absolute;
   left: -1.5em;
   font-weight: 700;
   color: #003366;
}

/* 署名エリア */
.privacy-signature {
   text-align: right;
   margin-bottom: 80px;
   line-height: 1.8;
   color: #333;
}

.privacy-signature .signature-name {
   margin-top: 20px;
   font-weight: 700;
}

/* サブ見出し（お問い合わせ・利用目的等） */
.privacy-sub-heading {
   font-size: 20px;
   font-weight: 700;
   color: #333;
   background-color: #eef4ff;
   /* 薄いブルー背景で区切り */
   padding: 15px 20px;
   margin-bottom: 20px;
   border-left: 4px solid #004098;
}

/* お問い合わせブロック */
.privacy-contact-block {
   margin-bottom: 60px;
}

.contact-info-box {
   margin-top: 15px;
   padding: 20px;
   border: 1px solid #ddd;
   background: #fff;
}

.contact-tel {
   font-size: 18px;
   font-weight: 700;
   margin: 10px 0;
}

.contact-tel a {
   color: #333;
   text-decoration: none;
   pointer-events: none;
   /* PCではリンク無効っぽく見せる（スマホは機能する） */
}

@media screen and (max-width: 768px) {
   .contact-tel a {
      pointer-events: auto;
      color: #004098;
      text-decoration: underline;
   }
}

.contact-hours {
   font-size: 14px;
   color: #666;
}

/* 利用目的等（PDFリンク）ブロック */
.privacy-pdf-block {
   margin-bottom: 40px;
}

.privacy-pdf-link {
   font-size: 16px;
}