/*
Theme Name: FST
Theme URI:
Description: 株式会社エフエスティ（FST）コーポレートサイト。静的HTMLから起こした専用テーマ。原稿はテンプレートに直書き、お問い合わせは Contact Form 7。
Author:
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fst
*/

/* =========================================================
   サイトの見た目は assets/css/common.css と各ページのCSSにある。
   このファイルには、WordPress側の都合で必要になる分だけ書く。
   ========================================================= */

/* ===== Contact Form 7 ===== */

/* CF7 は入力欄を span で包むので、行の幅いっぱいに広げる */
.p-contact-form .wpcf7-form-control-wrap {
  display: block;
}

.p-contact-form .wpcf7-list-item {
  margin: 0;
}

.p-contact-form .wpcf7-list-item-label {
  font-size: 16px;
  line-height: 1.6;
}

/* エラーの文言 */
.p-contact-form .wpcf7-not-valid-tip {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--color-alert);
}

.p-contact-form .wpcf7-response-output {
  margin: 32px 0 0;
  padding: 16px;
  border: 1px solid var(--section-rule);
  font-size: 14px;
  line-height: 1.75;
  text-align: center;
}

.p-contact-form .wpcf7-spinner {
  display: block;
  margin: 16px auto 0;
}

/* 送信ボタン（CF7 の submit は中に要素を置けないので、単色の面で作る） */
.p-contact-form .c-btn-submit {
  display: block;
  width: 100%;
  height: 120px;
  margin-top: 64px;
  border: 0;
  border-radius: 40px;
  background-color: var(--color-navy);
  color: var(--color-bg-soft);
  font-family: var(--font-mincho);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition:
    border-radius 600ms cubic-bezier(0.95, 0.05, 0.795, 0.035),
    background-color 600ms cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

@media (hover: hover) {
  .p-contact-form .c-btn-submit:hover {
    border-radius: 60px;
    background-color: var(--color-navy-soft);
  }
}

.p-contact-form .c-btn-submit:focus-visible {
  border-radius: 60px;
  background-color: var(--color-navy-soft);
}

@media (max-width: 540px) {
  .p-contact-form .c-btn-submit {
    height: 94px;
    border-radius: 32px;
    font-size: 17px;
  }
}

/* ===== 投稿本文（プライバシーポリシーなど） ===== */
.p-entry {
  max-width: 1040px;
  margin: 0 auto;
}

.p-entry h2 {
  margin-top: 64px;
  font-family: var(--font-mincho);
  font-size: 28px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.03em;
}

.p-entry h3 {
  margin-top: 40px;
  font-family: var(--font-mincho);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
}

.p-entry p,
.p-entry ul,
.p-entry ol,
.p-entry table {
  margin-top: 24px;
}

.p-entry ul,
.p-entry ol {
  padding-left: 1.5em;
  list-style: disc;
}

.p-entry ol {
  list-style: decimal;
}

.p-entry a {
  text-decoration: underline;
}

.p-entry > *:first-child {
  margin-top: 0;
}

@media (max-width: 840px) {
  .p-entry h2 {
    margin-top: 48px;
    font-size: 22px;
  }

  .p-entry h3 {
    font-size: 18px;
  }
}
