@charset "utf-8";
/* =========================================================
   お盆期間限定オンデマンドセミナー 申込フォーム 専用スタイル
   ・確定デザイン(apply-preview)をベースに .odc-lp 配下へスコープ化
   ・サイト共通CSS(header/footer)へ影響しないよう全て .odc-lp で限定
   ========================================================= */
.odc-lp{
  --navy:#152447; --navy-dark:#0d1830; --gold:#c9a13b;
  --cream:#f5f1e8; --gray:#5a6478; --border:#e2e6ee;
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
  color:#24304a; line-height:1.8;
}
.odc-lp *{box-sizing:border-box;}
.odc-lp img{max-width:100%;display:block;}
.odc-lp .container{max-width:1080px;margin:0 auto;padding:0 24px;}

/* ---- FV（2026_7準拠：大見出し＋メッシュ効果） ---- */
.c-page-sub__title_weekend{
	position:relative;
	padding:7.2% 5% 4.2%;
	text-align:center;
	font-size:2rem;
	line-height:1.4;
	text-shadow:0 0 16px #232e4d;
	letter-spacing:.1em;
	color:#fff;
	background:url("/img/common/お盆限定オンデマンドセミナー2026.png") no-repeat center center / cover;
}
.c-page-sub__title_weekend h1{display:block;color:#fff;margin:0;}
.c-page-sub__title_weekend::before{
	content:"";display:block;position:absolute;left:0;top:0;width:100%;height:100%;
	background:url(/img/common/bg-pattern.png);mix-blend-mode:multiply;
}
.c-page-sub__title_weekend .futura_b{
	font-size:8rem;text-shadow:0 0 16px #232e4d;display:block;line-height:1.2;letter-spacing:.1em;padding-left:.1em;
}
@media screen and (max-width:46.875em){
	.c-page-sub__title_weekend{font-size:1.6rem;padding:8% 5%;background-size:100% 100% !important;background-position:center center !important;}
	.c-page-sub__title_weekend .futura_b{font-size:4rem;text-shadow:0 0 5px #232e4d;}
}

/* ---- page-intro ---- */
.odc-lp .page-intro{padding:48px 0 40px;}
.odc-lp .intro-flex{display:flex;gap:48px;align-items:center;flex-wrap:wrap;}
.odc-lp .intro-copy{flex:1 1 380px;}
.odc-lp .intro-kv{flex:0 1 620px;max-width:620px;}
.odc-lp .intro-kv img{border-radius:10px;box-shadow:0 10px 28px rgba(21,36,71,.16);width:100%;height:auto;}
.odc-lp .intro-kv-sp{display:none;} /* モバイル時のみ表示（サブ見出し直下） */
.odc-lp .eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--gold);margin-bottom:14px;}
.odc-lp .page-intro h1{font-size:26px;color:var(--navy);font-weight:700;line-height:1.55;margin:0 0 14px;}
.odc-lp .sub-heading{font-size:15px;color:var(--gold);font-weight:700;margin:0 0 20px;}
.odc-lp .lead{font-size:15px;color:var(--gray);margin:0 0 24px;}

/* ---- section ---- */
.odc-lp .section{padding:56px 0 64px;}
.odc-lp .section-title{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:40px;}
.odc-lp .section-title h2{font-size:23px;color:var(--navy);font-weight:700;margin:0;line-height:1.5;}

/* ---- form ---- */
.odc-lp .form-shell{max-width:680px;margin:0 auto;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 32px rgba(21,36,71,.08);overflow:hidden;}
.odc-lp .form-head{background:var(--navy);color:#fff;padding:28px 32px;text-align:center;}
.odc-lp .form-head h2{font-size:19px;font-weight:700;margin:0 0 8px;}
.odc-lp .form-head p{font-size:13px;margin:0;color:rgba(255,255,255,.75);}
.odc-lp .form-body{padding:32px;}
.odc-lp .form-row{margin-bottom:24px;}
.odc-lp .form-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:10px;}
.odc-lp .badge-required,.odc-lp .badge-optional{font-size:11px;font-weight:700;padding:2px 8px;border-radius:3px;}
.odc-lp .badge-required{background:#fbeaea;color:#b8433f;}
.odc-lp .badge-optional{background:var(--border);color:var(--gray);}
.odc-lp .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.odc-lp input[type=text],.odc-lp input[type=email],.odc-lp input[type=tel],.odc-lp select{
  width:100%;padding:12px 14px;font-size:14px;font-family:inherit;color:#24304a;
  border:1px solid var(--border);border-radius:6px;background:#fff;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.odc-lp input:focus,.odc-lp select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,161,59,.18);}
.odc-lp .choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.odc-lp .choice-grid--levels{grid-template-columns:repeat(3,1fr);margin-bottom:10px;}
.odc-lp .choice{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;font-size:13px;color:var(--navy);cursor:pointer;transition:border-color .15s ease, background .15s ease;}
.odc-lp .choice:hover{border-color:var(--gold);background:var(--cream);}
.odc-lp .choice input{margin:0;accent-color:var(--gold);width:auto;}
.odc-lp .confirm-box{background:var(--cream);border-radius:8px;padding:20px 22px;margin-bottom:28px;}
.odc-lp .confirm-box>p{font-size:13px;color:var(--navy);font-weight:700;margin:0 0 14px;}
.odc-lp .confirm-list{display:flex;flex-direction:column;gap:10px;}
.odc-lp .confirm-list label{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--gray);cursor:pointer;}
.odc-lp .confirm-list input{accent-color:var(--gold);width:auto;}
.odc-lp .confirm-list a{color:var(--navy);text-decoration:underline;}
.odc-lp .submit-button{display:block;width:100%;padding:16px;font-size:16px;font-weight:700;font-family:inherit;color:var(--navy);background:var(--gold);border:none;border-radius:6px;cursor:pointer;transition:filter .15s ease;}
.odc-lp .submit-button:hover:not(:disabled){filter:brightness(1.06);}
.odc-lp .submit-button:disabled{background:#ccc;color:#fff;cursor:not-allowed;}

@media (max-width:760px){
  .odc-lp .field-grid{grid-template-columns:1fr;}
  .odc-lp .choice-grid{grid-template-columns:repeat(2,1fr);}
  .odc-lp .page-intro h1{font-size:23px;}
  /* モバイルのみ左右に余白（PC版はそのまま） */
  .odc-lp .page-intro{padding-left:24px;padding-right:24px;}
  /* モバイル：KVを「―お盆こそ…」直下に表示、PC用KVは非表示 */
  .odc-lp .intro-kv--pc{display:none;}
  .odc-lp .intro-kv-sp{display:block;margin:20px 0 4px;}
  .odc-lp .intro-kv-sp img{border-radius:10px;box-shadow:0 10px 28px rgba(21,36,71,.16);width:100%;height:auto;}
}
@media (max-width:480px){
  .odc-lp .choice-grid,.odc-lp .choice-grid--levels{grid-template-columns:1fr 1fr;}
}
