@charset "UTF-8";

/*
==================================================

   入力フォーム共用

==================================================
*/



/*
==================================================
  フォーム
==================================================
*/

/* ----- 入力フォーム ----- */

/* テーブル */
#contents form table {
margin: 0 0 30px;
}
#contents form table th {
position: relative;
width: 15em;
}

/* 必須・任意マーク */
#contents form table th strong,
#contents form table th span {
position: absolute;
right: 15px;
display: inline-block;
margin: 0.2rem 0 0;
padding: 4px 8px 5px;
font-size: 13px;
color: #ffffff;
}
#contents form table th strong {
background: var(--accent2-col);
}
#contents form table th span {
background: #a8a8a8;
}

/* フォーム部品 */
#contents form input[type="text"],
#contents form input[type="email"],
#contents form input[type="tel"],
#contents form textarea {
background: #ffffff;
border: 2px #7f7f7f solid;
border-radius: 5px;
font-size: 1rem;
font-family: 'NotoSansJP', sans-serif;
}
#contents form input[type="text"]:placeholder-shown,
#contents form input[type="email"]:placeholder-shown,
#contents form input[type="tel"]:placeholder-shown,
#contents form textarea:placeholder-shown {
background: #f9f9f9;
}
#contents form input[type="text"],
#contents form input[type="email"],
#contents form input[type="tel"] {
width: 100%;
padding: 7px;
}
#contents form textarea {
display: block;
width: 100%;
height: 18em;
resize: vertical;
padding: 7px;
line-height: 1.4;
}

/* ラベル（ラジオボタン用） */
#contents form table td label {
margin: 0 25px 0 0;
}
#contents form table td label input {
margin: 0 5px 0 0;
}

/* プライバシーポリシー */
#contents form div.privacy {
margin: 0 0 30px;
text-align: center;
}
#contents form div.privacy p {
margin: 0;
line-height: 1.8;
}
#contents form div.privacy p.agree {
margin: 15px 0 0;
}
#contents form div.privacy input[type="checkbox"] {
transform: scale(1.8);
margin: 0 13px 0 0;
}

/* ボタン */
#contents form div.submit {
text-align: center;
}
#contents form div.submit input {
width: 360px;
padding: 25px 20px;
background: var(--accent2-col);
border: 2px var(--accent2-col) solid;
border-radius: 10px;
font-size: 1.3rem;
font-weight: bold;
color: #ffffff;
cursor: pointer;
transition: 0.2s;
}
#contents form div.submit input:hover {
background: #ffffff;
color: var(--accent2-col);
}
/* JavaScriptオフの場合はdisabledにならない */
#contents form div.submit input[disabled] {
background: #999999;
border: 2px #999999 solid;
color: #ffffff;
cursor: default;
}



/* ----- ★899 ----- */
@media screen and (max-width: 899px) {

/* ----- 入力フォーム ----- */

/* テーブル */
#contents form table th {
width: auto;
}
#contents form table th,
#contents form table td {
display: block;
}
#contents form table th {
padding: 15px 10px 5px;
}
#contents form table td {
padding: 5px 10px 15px;
}

/* 必須・任意マーク */
#contents form table th strong,
#contents form table th span {
right: 10px;
margin: 0.1rem 0 0;
}

/* ラベル（ラジオボタン用） */
#contents form table td label {
display: inline-block;
margin: 10px 25px 15px 0;
}

/* プライバシーポリシー */
#contents form div.privacy p.agree {
margin: 20px 0 0;
}

/* ボタン */
#contents form div.submit input {
width: 300px;
padding: 20px 10px;
font-size: 1.1rem;
}
#contents form div.submit input:hover {
background: var(--accent2-col);
color: #ffffff;
}
/* JavaScriptオフの場合はdisabledにならない */
#contents form div.submit input[disabled] {
background: #999999;
}

/* ----- LINE ----- */
/* 左下の「LINEで応募」が紛らわしい時があるので非表示 */
#line-sp {
display: none;
}

}
/* ----- /899 ----- */



/*
==================================================
  フォームCGI
==================================================
*/

/* ----- ボディヘッダ ----- */
#bodyheader-script {
background: var(--accent1-col) url(../../image/header/default_back.png) no-repeat center / cover;
}

#bodyheader-script div.limit {
display: flex;
align-items: center;
height: 200px;
}

/* ページタイトル */
#bodyheader-script h1 {
font-size: 3rem;
font-weight: 900;
color: #ffffff;
line-height: 1.4;
text-shadow: 0 0 3px #000000;
}

/* ----- コンテンツ ----- */
/* レイヤー（左上三角） */
#contents::before {
border-style: none;
}

/* ----- フォーム ----- */
#contents form.script-form {
margin: 30px 0 0;
}

/* ----- 確認 ----- */
#check {
padding: 70px 0;
}

/* ----- エラー ----- */
#error {
padding: 70px 0;
}

#error div.message {
margin: 30px 0 0;
}

#error div.message ul {
margin: 0 0 0 1.4em;
list-style-type: disc;
}
#error div.message ul li {
margin: 0 0 5px;
line-height: 1.6;
}
#error div.message ul li:last-child {
margin: 0;
}

#error div.message strong {
color: var(--accent2-col);
}

/* ----- 修正用フォーム ----- */
#correction {
padding: 70px 0 100px;
background: var(--light-bgcol);
}

/* ----- 送信完了 ----- */
#complete {
padding: 70px 0 100px;
border-bottom: 1px #c0c0c0 solid;
}

#contents #complete p.back {
margin: 50px 0 0;
}



/* ----- ★899 ----- */
@media screen and (max-width: 899px) {

/* ----- ボディヘッダ ----- */
#bodyheader-script div.limit {
height: 180px;
}

/* ページタイトル */
#bodyheader-script h1 {
font-size: 1.8rem;
}

/* ----- 確認 ----- */
#check {
padding: 50px 0;
}

/* ----- エラー ----- */
#error {
padding: 50px 0;
}

/* ----- 修正用フォーム ----- */
#correction {
padding: 50px 0 80px;
}

/* ----- 送信完了 ----- */
#complete {
padding: 50px 0;
}

}
/* ----- /899 ----- */

