* {
  margin: 0;
  padding: 0;
  min-height: 0;
  min-width: 0;
  box-sizing: border-box
}

html, body, div, article, section, aside, header, footer, hgroup, nav, h1, h2, h3, ul, li, a, p, small, img {
  border: none;
  display: block
}

html {
  width: 100%;
  height: 100%;
  font-size: 11px;
  position: static;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%
}


@media screen and (max-width: calc(576px - 0.2px)) {
  html {
    font-size: 10px
  }
}

@media screen and (min-width: 575.9px) {
  html {
    font-size: 11px
  }
}


@media screen and (min-width: 767.8px) {
  html {
    font-size: 12px
  }
}

@media screen and (min-width: 992px) {
  html {
    font-size: 13px
  }

}

@media screen and (min-width: 1200px) {
  html {
    font-size: 14px
  }
}

@media screen and (min-width: 1400px) {
  html {
    font-size: 16px
  }
}

@media screen and (min-width: 1600px) {
  html {
    font-size: 18px
  }
}

@media screen and (min-width: 1920px) {
  html {
    font-size: 20px
  }
}





.bold{
	font-weight: 600!important;
}


body {
  height: 100%;
  width: 100%;
  position: relative;
  color: #333333;
  font-family: "游明朝", "YuMincho", "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  line-height: 1.71;
  letter-spacing: 0.05em;
  font-style: normal;
      background: #fafafa;
}

body::before {
  visibility: hidden;
  opacity: 0;
  position: absolute
}


@media screen and (max-width: calc(576px - 0.2px)) {
  body::before {
    content: "sm"
  }
}

@media screen and (min-width: 768px)and (max-width: calc(992px - 0.2px)) {
  body::before {
    content: "lg"
  }
}

@media screen and (min-width: 1200px) {
  body::before {
    content: "xl"
  }
}

a {
  zoom: 1;
  outline: 0;
  color: #776D62;
  text-decoration: none
}

li a{
    display: block;
    height: 100%;
    width: 100%
}

img {
width: 100%;
  outline: 0;
  border: 0;
  border-style: none
}

@media screen and (max-width: calc(992px - 0.2px)) {
  img {
    max-width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover
  }
}

ul, li {
  list-style: none;
  list-style-image: none
}

dl, ol, ul {
  margin-bottom: 0
}

label {
  display: inline-block;
  vertical-align: middle
}

ul, li, a, small {
  display: block
}

iframe {
  border: 0
}

.hide {
  display: none !important
}

.show-block {
  display: block !important
}

.show-inline {
  display: inline !important
}

.show-inline-block {
  display: inline-block !important
}

.show-flex {
  display: flex !important
}

.text-left {
  text-align: left !important
}

.text-center {
  text-align: center !important
}

.text-right {
  text-align: right !important
}


@media screen and (max-width: 575.8px) {
  .xs-none {
    display: none !important
  }
    .xs-block {
    display: block !important
  }
}

    .msd-block {
    display: none !important
  }

@media screen and (max-width: 767.8px) {
  .msd-none {
    display: none !important
  }
    .msd-block {
    display: flex !important
  }
}



@media screen and (min-width: 576px) {
  .sm-hide {
    display: none !important
  }
  .sm-show-block {
    display: block !important
  }
  .sm-show-inline {
    display: inline !important
  }
  .sm-show-inline-block {
    display: inline-block !important
  }
  .sm-show-flex {
    display: flex !important
  }
  .sm-text-left {
    text-align: left !important
  }
  .sm-text-center {
    text-align: center !important
  }
  .sm-text-right {
    text-align: right !important
  }
}

@media screen and (min-width: 768px) {
  .md-hide {
    display: none !important
  }
  .md-show-block {
    display: block !important
  }
  .md-show-inline {
    display: inline !important
  }
  .md-show-inline-block {
    display: inline-block !important
  }
  .md-show-flex {
    display: flex !important
  }
  .md-text-left {
    text-align: left !important
  }
  .md-text-center {
    text-align: center !important
  }
  .md-text-right {
    text-align: right !important
  }
}

@media screen and (min-width: 992px) {
  .lg-hide {
    display: none !important
  }
  .lg-show-block {
    display: block !important
  }
  .lg-show-inline {
    display: inline !important
  }
  .lg-show-inline-block {
    display: inline-block !important
  }
  .lg-show-flex {
    display: flex !important
  }
  .lg-text-left {
    text-align: left !important
  }
  .lg-text-center {
    text-align: center !important
  }
  .lg-text-right {
    text-align: right !important
  }
}

iframe {
  max-width: 100%
}



/* header */
.header { position: relative; width: 100%; z-index: 100; top: 0; padding: 30px 30px 25px; background: #fafafa; }
.header_inner { position: relative; }
.header_inner h2 { display: inline-block; padding-right:50px; vertical-align: top; position: relative; }
.header_inner h2 img { width: 88px; }
/*.header_inner h2::after {
  content: '';
  position: absolute;
  top: 50%;
  right: -2px;
  display: inline-block;
  width: 50px;
  height: 1px;
  background-color: #d8d8d8;
  transform: rotate(-68deg);
}*/
.header_inner p { display: inline-block; font-size: 10px; padding-top: 5px; }
.header_inner p b { display: block; font-size: 14px; color: #64a1a1; font-weight: normal; }



/* 共通：ガターを内側 / 上限=内容1800px + ガター */
.hero__inner,
.l-container,
.breadcrumb__inner {
  --gutter: clamp(16px, 5vw, 40px);
  box-sizing: border-box;
  padding-inline: var(--gutter);
  margin-inline: auto;

  /* 下限と上限（内容幅ベース） */
  min-width: calc(320px + 2 * var(--gutter));
  max-width: calc(1800px + 2 * var(--gutter)); /* ← 上限 */
}

.inner--bleed-right{
  position: relative;          /* 左マスク用 */
  box-sizing: border-box;
  width: calc(100% + var(--gutter));          /* 右へガター分広げる */
  margin-right: calc(-1 * var(--gutter));     /* 右ガターを相殺して右端までブリード */
  padding-right: 0;                            /* 右はゼロ扱い */
  /* 左側は inner の左paddingをそのまま使うので、left系は触らない */
  margin-top:3.4rem;
}

/* 左だけを隠す“マスク”：背景色はページに合わせて調整 */
.inner--bleed-right::before{
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 8.6%;
    background: var(--page-bg, #fff);
    pointer-events: none;
    z-index: 1;
}


/* 1440px時 = 1200px（= 83.333vw） */
.l-container {
  width: calc(83.333vw + 2 * var(--gutter));
}

/* 1440px時 = 1280px（= 88.889vw） */
.hero__inner,.breadcrumb__inner {
  width: calc(88.889vw + 2 * var(--gutter));
}







/* =========================================================
   Download (資料請求 入口) page styles
   - Mobile First
   - Units: rem
   - Colors: base #333, link/button #776D62
   - Fonts: 游明朝体 → Noto Serif JP → serif
   ========================================================= */

/* ---------- Base / Theme Tokens ---------- */
:root {
  --c-base: #333333;
  --c-accent: #776D62;       /* btn / link */
  --c-accent-hover: #5f574e; /* 濃いめ */
  --c-muted: #858585;
  --c-border: #E6E6E6;
  --c-card-bg: #FFFFFF;
  --radius-lg: 1.2rem;
  --radius-md: .8rem;
  --shadow-sm: 0px 0px 10px 0px rgba(51, 51, 51, 0.1);
  --shadow-md: 0px 0px 10px 0px rgba(51, 51, 51, 0.1);
  --container-w: 96rem; /* 960px相当（html 10px時）*/
  
}

/* ページ全体（モバイル基準） */
.docreq {
  color: var(--c-base);
  font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif;
  font-size: 1.4rem;          /* 14px 基準（html 10px 前提）*/
  line-height: 1.714;
}

/* レイアウトコンテナ */
.docreq .l-container {
  width: 100%;
  max-width: var(--container-w);
  margin-inline: auto;
  padding: 2.4rem 1.6rem;
}

/* ---------- Page Head ---------- */
.docreq__head {
  margin: 0 0 1.6rem;
}
.docreq__title {
  font-size: 2.2rem;
  font-weight: 500;
  text-align: center;
  color: #536F70;
}

/* ---------- Stepper ---------- */
.docreq-steps {
  display: flex;
  align-items: center;
  gap: .8rem;
  margin: .8rem 0 2.0rem;
  list-style: none;
  padding: 0;
  justify-content: center;
}
.docreq-steps__item {
    display: block;
    text-align: center;
    gap: .6rem;
    padding: 1.2rem 1.5rem 1rem;
    border: 1px solid var(--c-border);
	    border-color: #64A1A1;
    border-radius: 100%;
    background: #fff;
	color: #64A1A1;
}
.docreq-steps__num {
    display: block;
    min-width: 3.5rem;
    text-align: center;
    font-variant-numeric: tabular-nums;
    font-weight: 500;
	    line-height: 1;
}
.docreq-steps__label {
  font-size: 1.2rem;
color: #64A1A1;
      line-height: 1;
    font-weight: 500;
}
.docreq-steps__item.is-current {
    border-color: #64A1A1;
    background: #64A1A1;
    color: #ffffff;
}

.docreq-steps__item.is-current .docreq-steps__label {
    color: #ffffff;
}
.docreq-steps__sep {
  user-select: none;
  font-size: 2rem;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%225%22%20height%3D%228%22%20viewBox%3D%220%200%205%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1%201L4%204L1%207%22%20stroke%3D%22%2364A1A1%22%20stroke-width%3D%220.5%22%2F%3E%3C%2Fsvg%3E');
      color: transparent;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* ---------- Card ---------- */
.docreq-card {
  background: var(--c-card-bg);
  box-shadow: var(--shadow-md);
padding: 3.5rem 3rem 5rem;
}
.docreq-card__title {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0 0 2.6rem;
    text-align: center;
}

/* ---------- Choices (3 Buttons) ---------- */
.docreq-choice {
  display: grid;
  gap: 1.2rem;
}
.docreq-choice__btn {
  display: grid;
  place-items: center;
  min-height: 4.8rem;
  padding: 1.2rem 1.6rem;
  background: var(--c-accent);
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  transition: transform .12s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.docreq-choice__btn:hover {
  background: var(--c-accent-hover);
  border-color: var(--c-accent-hover);

}
.docreq-choice__btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 .3rem rgba(119,109,98,.3);
}

/* ---------- Links (fallback) ---------- */
.docreq a {

}
.docreq a:hover {   text-decoration: none; }

/* =========================================================
   Breakpoints
   仕様に合わせて：remはそのまま、htmlのfont-sizeは既定の媒体側で制御
   ========================================================= */

.docreq-card.contact {
        width: 72.432%;
        margin: 0 auto;
}

.docreq-card{
margin-top: 4rem;
}

.docreq .docreq-thanks{
  text-align: center;
}

  .docreq-choice {
	        width: 90%;
        margin: 0 auto;
  }

  .other-link__body {
    text-align: center;
    margin-bottom: 4rem;
}

.other-link__body .title {
    font-size: 1.3rem;
    color: #536F70;
}

.other-link__body a {
width: 12rem;
    margin-top: 0.5rem;
    margin-left: auto;
    margin-right: auto;
}

/* スマホ ~575.8px は基準（モバイルファースト）。必要な微調整のみ */
@media screen and (max-width: calc(576px - 0.2px)) {
.docreq .docreq-thanks {
    text-align: left;
}
.docreq-card.contact {
        width: 100%;
        margin: 0 auto;
}
.header {
    padding: 2.4rem 1.6rem;
}
  .docreq-choice {
	        width: 100%;
        margin: 0 auto;
  }

  .other-link__body {
    text-align: left;
    margin-bottom: 4rem;
}


.other-link__body a {
width: 12rem;
    margin-top: 0.5rem;
    margin-left: 0;
    margin-right: auto;
}
}



.flex.calender{
    display: flex;
    align-items: center;
    gap: 2rem;
}

.flex.calender span{
    width: 50%;
}


/* 768px~991.8px (タブレット) */
@media screen and (min-width: 768px) and (max-width: calc(1200px - 0.2px)) {
  .docreq__title { font-size: 2.4rem; }
  .docreq-card__title { font-size: 2.0rem; }
  .docreq-choice {
    /*grid-template-columns: repeat(3, 1fr);*/
    gap: 1.6rem;
  }
  .docreq-choice__btn { min-height: 5.2rem; }
  .docreq-steps__label { display: inline; }
}

/* 1200px~ (PC) */
@media screen and (min-width: 1200px) {
  .docreq .l-container { padding: 3.2rem 2.0rem; }
  .docreq-steps { margin-bottom: 2.4rem; gap: 1.0rem; }

  .docreq-card {  }

  .docreq-choice {
    /*grid-template-columns: repeat(3, 1fr);*/
    gap: 2.0rem;
  }
}








/* =========================================================
   Download > Mail (入力フォーム) まとめCSS
   - 背景が暗い想定：ラベルは白
   - フィールド: #FAFAFA / 枠:#DFDFDF / 文字:#DFDFDF
   - プレースホルダ大きめ & 縦位置揃え
   - セレクト矢印：指定SVG
   ========================================================= */

/* 追加トークン */
:root{
  --c-danger: #FF0004;
  --c-field-bg: #FAFAFA;
  --c-field-bd: #DFDFDF;
  --c-placeholder: #8f8f8f;
}

/* ラベル/行間 */
.docreq .docreq-form .form-label{
  font-weight:500;
  display:block;
  margin:0 0 1rem;
}
.docreq .docreq-form .req{ color:var(--c-danger); }
.docreq .docreq-form .form-row{ margin:0 0 2rem; }

/* 入力・セレクト共通 */
.docreq .docreq-form input[type="text"],
.docreq .docreq-form input[type="email"],
.docreq .docreq-form input[type="tel"],
.docreq .docreq-form textarea,
.docreq .docreq-form select,
.docreq .docreq-form .input-text,
.docreq .docreq-form .input-select{
  box-sizing:border-box;
  width:100%;
  height:auto;                 /* 固定高さは使わない */
  min-height:4.8rem;           /* 見た目の高さ */
  padding:1.4rem 1.6rem;       /* 縦位置を揃える */
  background-color:var(--c-field-bg);
  border:1px solid var(--c-field-bd);
  
  color:#8f8f8f;               /* 入力文字色（指定） */
  font-size:1.2rem;            /* 入力後も大きめ */
  line-height:1.4;
  outline:none;
  -webkit-appearance:none; appearance:none;
   font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif;
}
.docreq .docreq-form textarea{ min-height:10rem; resize:vertical; }

/* プレースホルダ（色/サイズ統一 & Safari他対策） */
.docreq .docreq-form input::placeholder,
.docreq .docreq-form textarea::placeholder{
  color:var(--c-placeholder);
  font-size:1.2rem;
  line-height:1.4;
   font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif;
}
.docreq .docreq-form input::-webkit-input-placeholder,
.docreq .docreq-form textarea::-webkit-input-placeholder{ color:var(--c-placeholder); font-size:1.2rem; line-height:1.4;  font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif;}
.docreq .docreq-form input::-moz-placeholder,
.docreq .docreq-form textarea::-moz-placeholder{ color:var(--c-placeholder); font-size:1.2rem; line-height:1.4; opacity:1;  font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif;}
.docreq .docreq-form input:-ms-input-placeholder,
.docreq .docreq-form textarea:-ms-input-placeholder{ color:var(--c-placeholder); font-size:1.2rem; line-height:1.4; font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif; }
.docreq .docreq-form input::-ms-input-placeholder,
.docreq .docreq-form textarea::-ms-input-placeholder{ color:var(--c-placeholder); font-size:1.2rem; line-height:1.4; font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif; }

/* セレクト：矢印（指定SVG） */
.docreq .docreq-form select,
.docreq .docreq-form .input-select{
  padding-right:3.2rem;
  background-image:url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2212%22%20height%3D%227%22%20viewBox%3D%220%200%2012%207%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11%201L6%206L0.999999%201%22%20stroke%3D%22%23776D62%22%2F%3E%3C%2Fsvg%3E');
  background-repeat:no-repeat;
    background-size: 16px 15px;
    background-position: right 1.2rem center;
    font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif;
}

/* バリデーション */
.docreq .wpcf7-not-valid{ border-color:var(--c-danger) !important; }
.docreq .wpcf7-not-valid-tip{
  color:var(--c-danger);
  font-size:1.2rem;
  margin-top:.6rem;
}

/* 2択ラジオ（あり/なし） */
.docreq .form-row .wpcf7-radio{ display:flex; gap:1.2rem; align-items:center; flex-wrap:wrap; }
.docreq .form-row .wpcf7-radio .wpcf7-list-item{ margin:0; }
.docreq .form-row .wpcf7-radio .wpcf7-list-item label{ cursor:pointer; display:inline-grid; align-items:center; }
.docreq .form-row .wpcf7-radio input{ display:none; } /* 本体は隠す */
.docreq .form-row .wpcf7-radio .wpcf7-list-item-label{
  display:inline-block;
  min-width:9.6rem;
  text-align:center;
  padding:1rem 1.6rem;
  
  background:#E6E6E6;       /* 非選択 */
  color:#776D62;
  border:1px solid #E6E6E6;
  line-height:1;
}
.docreq .form-row .wpcf7-radio input:checked + .wpcf7-list-item-label{
  background:#776D62;       /* 選択時 */
  border-color:#776D62;
  color:#FFF;
}

/* 送信（確認画面へ） */
.docreq .wpcf7 input.wpcf7-submit,
.docreq .form-actions .btn-primary{
  width:100%;
  height:5.2rem;
  display:inline-grid;
  place-items:center;
  border:none;
  
  background:#776D62;
  color:#FFF;
  font-weight:500;
  letter-spacing:.02em;
  transition:background-color .2s ease, transform .12s ease;
  cursor:pointer;
  font-size: 1.4rem;
      font-family: "游明朝体", "YuMincho", "Noto Serif JP", serif;
}
.docreq .wpcf7 input.wpcf7-submit:hover{ background:#5f574e; }
.docreq .wpcf7 input.wpcf7-submit:active{ transform:translateY(.5px); }

/* 戻るリンク */
.docreq .form-back{ margin-top:1.2rem; text-align:center; }
.docreq .docreq-link-back{ color:#BEBFBF; text-decoration:none; font-size:1.2rem; }
.docreq .docreq-link-back:hover{ text-decoration:underline; }

/* CF7のレスポンスメッセージ */
.docreq .wpcf7 form .wpcf7-response-output{
  margin:1.2rem 0 0;
  border:none;
  padding:1.0rem 1.2rem;
  background:rgba(0,0,0,.35);
  color:#fff;
  box-shadow:0 0 10px rgba(51,51,51,0.1);
}
.docreq .wpcf7 form.sent .wpcf7-response-output{ background:rgba(100,161,161,.25); }
.docreq .wpcf7 form.failed .wpcf7-response-output,
.docreq .wpcf7 form.invalid .wpcf7-response-output{ background:#FF0004; }

/* iOSの自動拡大抑止（16px相当なので実質OKだが念のため） */
.docreq{ -webkit-text-size-adjust:100%; }

.form-actions {
    margin-top: 5rem;
}







/* =========================================================
   /download/mail/confirm/ 追加スタイル
   - 白カード＋点線セパレーター
   - ラベルはやや淡色、値は通常色
   - 送信ボタン濃色、下に戻るリンク
   ========================================================= */

:root{
  --c-sep: #DFDFDF;
  --c-label: #776D62;  /* ラベルの淡色 */
}



/* 確認リスト */
.docreq .confirm-list{
  margin: 0 0 2.4rem;
  padding: 0;
}
.docreq .confirm-row{
  padding: 1.6rem 0 1.2rem;
  border-bottom: 1px dashed var(--c-sep);
}
.docreq .confirm-row:first-child{

}
.docreq .confirm-row dt{
  margin: 0 0 .6rem;
  font-size: 1.4rem;
  color: var(--c-label);
  font-weight: 500;
  line-height: 1.6;
}
.docreq .confirm-row dt .req{ color: #D44C4C; }
.docreq .confirm-row dd{
  margin: 0;
  font-size: 1.6rem;
  color: var(--c-base);  /* 値は通常色で */
  line-height: 1.7;
}

/* 送信ボタン（共通ボタン定義を踏襲） */
.docreq .wpcf7 input.wpcf7-submit{
  width: 100%;
  height: 5.2rem;
  display: inline-grid;
  place-items: center;
  border: none;
  background: #776D62;
  color: #FFF;
  font-weight: 500;
  transition: background-color .2s ease, transform .12s ease;
  cursor: pointer;
}
.docreq .wpcf7 input.wpcf7-submit:hover{ background: #5f574e; }
.docreq .wpcf7 input.wpcf7-submit:active{ transform: translateY(.5px); }


/* 前の画面に戻る（CF7の previous は input[type=button] なのでリセットしてリンク風に） */
.docreq .form-back{ margin-top:1.2rem; text-align:center; }

.docreq .form-back .wpcf7-previous.btn-ghost{
  -webkit-appearance:none; appearance:none;
  display:inline-block;
  font: inherit;
  font-size:1.2rem;          /* 画像どおり小さめ */
  font-weight:400;
  color:#BEBFBF;
  background:none;
  border:none;
  padding: 0rem 0 .1rem 1.6rem;
  line-height:1.6;
  cursor:pointer;

  /* 下線風（hover時のみ表示） */
  border-bottom:1px solid transparent;

  /* 左向き矢印アイコン（背景に描画） */
  background-image:url('data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%226%22 height=%2210%22 viewBox=%220 0 6 10%22 fill=%22none%22%3E%3Cpath d=%22M4.5 1 L1.5 5 L4.5 9%22 stroke=%22%23BEBFBF%22 stroke-width=%221.2%22 stroke-linecap=%22round%22/%3E%3C/svg%3E');
  background-repeat:no-repeat;
  background-size:1rem 0.8rem;
  background-position:left center;
}

.docreq .form-back .wpcf7-previous.btn-ghost:hover{
  border-bottom-color: currentColor;   /* hoverで下線表示 */
}

.docreq .form-back .wpcf7-previous.btn-ghost:focus-visible{
  outline:none;
  box-shadow:0 0 0 .24rem rgba(119,109,98,.25);
  border-radius:.2rem;
}



.docreq .form-back .txt-link{
  -webkit-appearance:none; appearance:none;
  display:inline-block;
  font: inherit;
  font-size:1.2rem;          /* 画像どおり小さめ */
  font-weight:400;
  color:#BEBFBF;
  background:none;
  border:none;
  padding: 0rem 0 .1rem 1.6rem;
  line-height:1.6;
  cursor:pointer;

  /* 下線風（hover時のみ表示） */
  border-bottom:1px solid transparent;

  /* 左向き矢印アイコン（背景に描画） */
  background-image:url('data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%226%22 height=%2210%22 viewBox=%220 0 6 10%22 fill=%22none%22%3E%3Cpath d=%22M4.5 1 L1.5 5 L4.5 9%22 stroke=%22%23BEBFBF%22 stroke-width=%221.2%22 stroke-linecap=%22round%22/%3E%3C/svg%3E');
  background-repeat:no-repeat;
  background-size:1rem 0.8rem;
  background-position:left center;
}

.docreq .form-back .txt-link:hover{
  border-bottom-color: currentColor;   /* hoverで下線表示 */
}

.docreq .form-back .txt-link:focus-visible{
  outline:none;
  box-shadow:0 0 0 .24rem rgba(119,109,98,.25);
  border-radius:.2rem;
}






/* =========================================================
   /download/mail/thanks/ 完了画面 追加スタイル
   ========================================================= */

.docreq .docreq-card__title{
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  margin-bottom: 2.4rem;
}



.docreq .docreq-thanks__lead{
  font-size: 1.6rem;
  font-weight: 500;
  margin: 0 0 1.0rem;
  color: var(--c-base);
}

.docreq .docreq-thanks__body{
  font-size: 1.3rem;
  line-height: 1.9;
  color: var(--c-base);
  margin: 0 0 2.4rem;
}

/* 戻るボタン（共通のbtn-primaryトーン #776D62 を踏襲） */
.docreq .docreq-thanks__actions .btn-primary{
  display: inline-grid;
  place-items: center;
  min-width: 24rem;
  height: 5.2rem;
  padding: 0 2.0rem;
  border: none;
  background: #776D62;
  color: #fff;
  font-weight: 500;
  text-decoration: none;
  transition: background-color .2s ease, transform .12s ease;
}
.docreq .docreq-thanks__actions .btn-primary:hover{ background: #5f574e; }
.docreq .docreq-thanks__actions .btn-primary:active{ transform: translateY(.5px); }

/* 1200px~（少しだけスケールアップ） */
@media screen and (min-width: 1200px){

}

h2#docreq-card-title .sml {
    display: block;
    font-size: 1.4rem;
    font-weight: 400;
}

.form-row--click{ cursor:text; }
.form-row--click input[type="date"]{ width:100%; }
/* 行全体がクリックできる雰囲気に */
.form-row--click { display:block; cursor:text; }

/* 見た目上の高さが薄い場合は余白を少し確保（任意） */
.form-row--click .wpcf7-form-control-wrap { display:block; }

/* date はネイティブUIを使う：select用の見た目を解除 */
.docreq .docreq-form input[type="date"]{
  -webkit-appearance: auto;  /* ← 重要（Safari） */
          appearance: auto;
  background-image: none;    /* select用の矢印が乗っていたら消す */
  background-color: #FAFAFA;
  border: 1px solid #DFDFDF;
  color: #8f8f8f;
  min-height: 4.8rem;
  padding: 1.4rem 1.6rem;
  line-height: 1.4;
}

/* カレンダーアイコンにポインタを効かせる（Safari/WebKit） */
.docreq .docreq-form input[type="date"]::-webkit-calendar-picker-indicator{
  opacity: 1;
  cursor: pointer;
}

/* もし .input-select の見た目が date に誤適用されていたら上書きで無効化 */
.docreq .docreq-form input[type="date"].input-select{
  background-image: none;
}






/* =========================================================
   Autofill color normalize (Chrome/Edge/Safari/Firefox)
   - 背景: #FAFAFA / 枠: #DFDFDF / 文字: #DFDFDF
   - プレースホルダ/通常入力と同じトーンに統一
   ========================================================= */

/* WebKit/Chromium 系（Chrome/Edge/Safari） */
.docreq .docreq-form input:-webkit-autofill,
.docreq .docreq-form textarea:-webkit-autofill,
.docreq .docreq-form select:-webkit-autofill,
.docreq .docreq-form input:-webkit-autofill:focus,
.docreq .docreq-form textarea:-webkit-autofill:focus,
.docreq .docreq-form select:-webkit-autofill:focus {
  /* 背景は box-shadow で上書きするのが定石 */
  box-shadow: 0 0 0 1000px #FAFAFA inset !important;
  border: 1px solid #DFDFDF;
  /* オートフィルの黄背景が戻らないように */
  transition: background-color 600000s 0s, color 600000s 0s;
}

/* 標準 :autofill（Safari 15.4+ など一部） */
.docreq .docreq-form input:autofill,
.docreq .docreq-form textarea:autofill,
.docreq .docreq-form select:autofill,
.docreq .docreq-form input:autofill:focus,
.docreq .docreq-form textarea:autofill:focus,
.docreq .docreq-form select:autofill:focus {
  box-shadow: 0 0 0 1000px #FAFAFA inset !important;
  caret-color: #DFDFDF;
  border: 1px solid #DFDFDF;
}

/* Firefox */
.docreq .docreq-form input:-moz-autofill,
.docreq .docreq-form textarea:-moz-autofill,
.docreq .docreq-form select:-moz-autofill,
.docreq .docreq-form input:-moz-autofill:focus,
.docreq .docreq-form textarea:-moz-autofill:focus,
.docreq .docreq-form select:-moz-autofill:focus {
  box-shadow: 0 0 0 1000px #FAFAFA inset !important;
  caret-color: #DFDFDF;
  border: 1px solid #DFDFDF;
}

/* オートフィルでフォントサイズが初期化される対策（Chrome系） */
.docreq .docreq-form input:-webkit-autofill::first-line,
.docreq .docreq-form textarea:-webkit-autofill::first-line {

}

/* 既存の date 入力のネイティブUI維持（前に入れたパッチと整合） */
.docreq .docreq-form input[type="date"]{
  -webkit-appearance: auto;
          appearance: auto;
  background-image: none;
}



select option{
    color: #333333;
}

input[type="text"],textarea ,input[type="email"],input[type="tel"],input[type="date"]{
  color: #333333!important;
}

/* 既定：薄い（先頭option＝プレースホルダー選択時） */
select.input-select.is-placeholder { color: #8f8f8f!important; }

/* 値が選ばれている：濃い */
select.input-select.is-filled { color:#333333!important; }
