@charset "utf-8";
/* CSS Document */

.content01 {
    text-align: center;
    /* フォールバック */
    padding: 60px 0 0;
    /* 対応ブラウザで top だけ上書き */
    padding-top: clamp(60px, 6vh, 96px);

}

.content01 h2{
    font-size: 30px;
    margin-top: 90px;
    margin: 90px auto 40px;
}

.content01 .w860 {
    max-width: 860px;
    margin: auto;
}

.content01 .box {
    display: flex;
    border-bottom: solid 1px #747474;
    padding: 20px 0;
    gap:30px;
}

.content01 .box.box-l{
    justify-content: flex-start;
}

.content01 .box.box-l div{
    width: 100%;
    text-align: left;
}

.content01 .box .k{
    width: 280px;
    text-align: left;
    font-size: 14px;
    white-space: nowrap;
}

.content01 .box .k span{
    font-size: 12px;
    color: #F12326;
    border: solid 1px #F12326;
    padding: 0 5px;
    margin-left: 10px;
    white-space: nowrap;
}

.content01 .box input[type='text'],.content01 .box textarea {
    width: 100%;
}

.content01 .box input[type='text'] {
    min-height: 28px;
}

.content01 .box input[type='text'].short {
    max-width: 180px;
}

.content01 .box textarea {
    height: 100px;
}

.content01 .submit-button {
    max-width: 220px;
    margin: 40px auto 0;
}

.content01 .text01 {
    font-size: 14px;
    text-align: left;
    margin: 60px auto 0;
}

.content01 .box p {
    text-align: left;
}

@media screen and (max-width: 767px) {
    .content01 {
        text-align: center;
        padding: 40px 5vw 0;
    }

    .content01 h2{
        font-size: 20px;
        margin-top: 90px;
        margin: 90px auto 40px;
    }


    .content01 .box {
        display: flex;
        flex-flow: column;
        padding: 10px 0;
        gap:5px;
        border-bottom: none;
    }

    .content01 .box.box-l{
        justify-content: flex-start;
    }

    .content01 .box.box-l div{
        width: 100%;
        text-align: left;
    }

    .content01 .box .k{
        width: 280px;
        text-align: left;
        font-size: 14px;
        white-space: nowrap;
    }

    .content01 .box .k span{
        font-size: 12px;
        color: #F12326;
        border: solid 1px #F12326;
        padding: 0 5px;
        margin-left: 10px;
        white-space: nowrap;
    }

    .content01 .box input[type='text'],.content01 .box textarea {
        width: 100%;
    }

    .content01 .box input[type='text'] {
        min-height: 28px;
    }

    .content01 .box input[type='text'].short {
        max-width: 180px;
    }

    .content01 .box textarea {
        height: 100px;
    }

    .content01 .submit-button {
        max-width: 220px;
        margin: 40px auto 0;
    }

    .content01 .text01 {
        font-size: 14px;
        text-align: left;
        margin: 60px auto 0;
    }
}

/* 丸数字カウンター（1〜20まで） */
@counter-style circled-decimal {
  system: fixed;  /* 用意した記号だけを使う */
  symbols: "①" "②" "③" "④" "⑤" "⑥" "⑦" "⑧" "⑨" "⑩"
           "⑪" "⑫" "⑬" "⑭" "⑮" "⑯" "⑰" "⑱" "⑲" "⑳";
  suffix: " ";     /* マーカーのあとに半角スペース */
  fallback: decimal; /* 21以降は普通の数字にフォールバック */
}

ol.circled { list-style: circled-decimal; padding-left: 1.4em; }

.content01 .privacy-policy {
    margin-top: 90px;
    text-align: left;
}

.content01 .privacy-policy h3 {
    text-align: center;
    font-size: 16px;
    background: #e2e2e3;
}

.content01 .privacy-policy p{
    margin: 20px auto 0;
}

.content01 .privacy-policy h4{
    margin: 20px auto 0;
    font-weight: bold;
}

.content01 .privacy-policy ol {
    margin: 20px 0 0;
}

/* 送信ボタンを画像で置き換え */
#contact-submit.submit-button{
  /* ボタンサイズを画像に合わせて調整 */
  width: 220px;           /* 画像の幅 */
  height: 60px;           /* 画像の高さ */
  padding: 0;
  border: none;
  background: url("../images/contact/submit.svg") no-repeat center / contain;
  /* 文字は視覚的に消す（スクリーンリーダー用にラベルは残す） */
  color: transparent;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
}

/* アクセシビリティと操作感 */
#contact-submit.submit-button:focus-visible {
  outline: 2px solid #0ea5e9;
  outline-offset: 2px;
}
#contact-submit.submit-button:disabled {
  opacity: .6;
  cursor: not-allowed;
}
