/*--------------------------------------------------------------
  File Name: lower-page.css
  Description: 下層ページスタイル
  Purpose: 特定ページのレイアウト調整・装飾のため
  Created: 2025-11-24
  Updated: 2025-11-24
--------------------------------------------------------------*/

/* ローディング時のフェードイン設定 */
body {
  opacity: 0;
  transition: opacity 0.2s ease-in;
}

body.loaded {
  opacity: 1;
}

/* basic style */
.logo {
  height: 15vh;
  justify-content: flex-start;
  padding-top: 2vw;
}

.logo .logo-area {
  width: 14vw;
  padding-left: 4vw;
  max-width: 85px;
  min-width: 50px;
}

/* contact form */
.form-container {
  max-width: 600px;
  margin: 0 auto;
  padding: 30px 30px 30px 10px;
}

input {
  border-color: #a0a0a0;
  border: 1px solid;
  width: 100%;
  height: 35px;
  display: inline-block;
  font-size: 1.1rem;
  padding: 2px 10px;
}

select {
  border-color: #a0a0a0;
  border: 1px solid;
  width: 40%;
  min-width: 200px;
  display: inline-block;
  padding: 2px 10px;
}

textarea {
  border-color: #a0a0a0;
  border: 1px solid;
  width: 100%;
  display: inline-block;
  font-size: 1.1rem;
  padding: 2px 10px;
}

input.submit {
  border: 0px solid;
  width: 40%;
  height: 38px;
  display: inline-block;
  font-size: 1.5rem;
  padding: 2px 10px;
  border-radius: 25px;
  background-color: #7ac06a;
  color: #ffffff;
}

input.submit:hover {
  opacity: 0.4;
}

.smf-item__label {
  font-size: 1.1rem;
  font-weight: 400;
}

span.required-field {
  color: #ff004d;
  padding-left: 3px;
}

span.att {
  color: #ff004d;
}

p.submit-box {
  margin: 0 auto;
  text-align: center;
  padding-left: 96px;
}

.smf-action {
  text-align: center;
  margin-top: 50px;
}
.smf-action .smf-button-control__control {
  border-radius: 30px;
  font-size: 1.2rem;
  letter-spacing: 2px;
  background-color: #7ac06b;
  background-image: none;
  padding-left: 18px;
  color: #fff;
}

.smf-action .smf-button-control__control[disabled] {
  color: #fff;
}

/* 中型デバイス */
@media (min-width: 600px) {
  /* 大きめのスマートフォン向けのスタイル */
}

/* 大型デバイス */
@media (min-width: 700px) {
  /* タブレット向けのスタイル */

  .logo .logo-area {
    width: 10vw;
    padding-left: 0;
  }
}

/* 小型デスクトップ */
@media (min-width: 1201px) {
  /* 小型デスクトップ向けのスタイル */

  .logo .logo-area {
    width: 8vw;
  }
}

/* 大型デスクトップ */
@media (min-width: 2000px) {
  /* 大型デスクトップ向けのスタイル */
}
