
.cgrid{display:grid;grid-template-columns:1fr 360px;gap:56px;align-items:start}
.clead{color:var(--txt-mid);font-size:13.5px;line-height:2.1;font-weight:300;margin-bottom:24px}
.wpn{background:var(--navy);color:rgba(255,255,255,.8);padding:16px 20px;font-size:12.5px;line-height:1.9;font-weight:300;border-left:3px solid var(--gold);margin-bottom:22px}
.wpn strong{color:var(--gold-lt)}.wpn code{background:rgba(255,255,255,.1);padding:2px 6px;border-radius:3px;font-size:11px}
.fw .fr{margin-bottom:16px}
.fw label{display:block;font-size:11px;letter-spacing:.12em;color:var(--txt-lt);font-weight:500;margin-bottom:6px;text-transform:uppercase}
.fw label .req{color:var(--gold);margin-left:4px;font-size:10px}
.fw input[type=text],.fw input[type=email],.fw input[type=tel],.fw select,.fw textarea{width:100%;background:var(--wh);border:1px solid var(--cream-dk);padding:11px 14px;font-size:14px;font-family:'Noto Sans JP',sans-serif;color:var(--txt);outline:none;transition:border-color .25s;-webkit-appearance:none}
.fw input:focus,.fw select:focus,.fw textarea:focus{border-color:var(--gold)}
.fw textarea{min-height:100px;resize:vertical}
.fw .rg{display:flex;gap:16px;flex-wrap:wrap}
.fw .rg label,.fw .cbg label{display:flex;align-items:center;gap:8px;font-size:13px;letter-spacing:0;text-transform:none;color:var(--txt-mid);cursor:pointer;font-weight:300;margin-bottom:0}
.fw .rg input[type=radio],.fw .cbg input[type=checkbox]{accent-color:var(--gold)}
.fw .cbg{display:flex;flex-direction:column;gap:7px}
.fw .bsub{width:100%;background:var(--navy);color:var(--wh);border:none;padding:16px;font-size:13px;letter-spacing:.2em;font-weight:500;font-family:'Noto Sans JP',sans-serif;cursor:pointer;transition:background .25s;margin-top:4px}
.fw .bsub:hover{background:var(--navy-mid)}
.cside{display:flex;flex-direction:column;gap:18px}
.csb{background:var(--cream);padding:26px 22px;border-bottom:3px solid var(--gold)}
.csb h4{font-family:'Noto Serif JP','Georgia',serif;font-size:14px;font-weight:600;color:var(--navy);margin-bottom:10px;letter-spacing:.04em}
.csb p{color:var(--txt-mid);font-size:12.5px;line-height:1.95;font-weight:300}
.cstel{font-family:'Cormorant Garamond','Times New Roman',serif;font-size:26px;color:var(--navy);font-weight:300;letter-spacing:.06em;text-decoration:none;display:block;margin-top:6px}
.cstel:hover{color:var(--gold)}
.cshrs{font-size:12px;color:var(--txt-lt);font-weight:300;margin-top:4px}

@media(max-width:768px){
  .cgrid{grid-template-columns:1fr}
  .cside{display:none}
}
/* Snow Monkey Forms スタイル調整 */
.smf-form{width:100%}
.smf-item{margin-bottom:18px}
.smf-item__col--label label{display:block;font-size:11px;letter-spacing:.12em;color:var(--txt-lt);font-weight:500;margin-bottom:6px;text-transform:uppercase}
.smf-item__col--controls input[type=text],
.smf-item__col--controls input[type=email],
.smf-item__col--controls input[type=tel],
.smf-item__col--controls select,
.smf-item__col--controls textarea{
  width:100%;background:var(--wh);border:1px solid var(--cream-dk);
  padding:11px 14px;font-size:14px;font-family:'Noto Sans JP',sans-serif;
  color:var(--txt);outline:none;transition:border-color .25s;
  -webkit-appearance:none;box-sizing:border-box;
}
.smf-item__col--controls input:focus,
.smf-item__col--controls select:focus,
.smf-item__col--controls textarea:focus{border-color:var(--gold)}
.smf-item__col--controls textarea{min-height:120px;resize:vertical}
.smf-item__col--controls .smf-checkboxes,
.smf-item__col--controls .smf-radios{display:flex;flex-direction:column;gap:8px}
.smf-item__col--controls .smf-checkboxes label,
.smf-item__col--controls .smf-radios label{
  display:flex;align-items:center;gap:8px;font-size:13px;
  color:var(--txt-mid);font-weight:300;letter-spacing:0;text-transform:none;
  cursor:pointer;margin-bottom:0;
}
.smf-item__col--controls input[type=checkbox],
.smf-item__col--controls input[type=radio]{accent-color:var(--gold);width:16px;height:16px}
.smf-form__submit{margin-top:8px}
.smf-form__submit button,.smf-form__submit input[type=submit]{
  width:100%;background:var(--navy);color:var(--wh);border:none;
  padding:16px;font-size:13px;letter-spacing:.2em;font-weight:500;
  font-family:'Noto Sans JP',sans-serif;cursor:pointer;transition:background .25s;
}
.smf-form__submit button:hover{background:var(--navy-mid)}
.smf-form--simple-table .smf-item{
  display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:start;
  padding:16px 0;border-bottom:1px solid var(--cream-dk);
}
@media(max-width:768px){
  .smf-form--simple-table .smf-item{grid-template-columns:1fr}
}
