@charset "UTF-8";

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

   お問い合わせ

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



/*
==================================================
  お問い合わせ
==================================================
*/

#contents {
padding: 0 0 150px;
}

#contents div.explain {
margin: 0 0 70px;
}
#contents div.explain p {
line-height: 1.8;
}
#contents div.explain ul {
margin: 40px 0 0;
padding: 30px 30px 30px 50px;
background: var(--normal-bgcol);
list-style-type: disc;
}
#contents div.explain ul li {
margin: 0 0 5px;
font-size: 1rem;
line-height: 1.8;
}
#contents div.explain ul li:last-child {
margin: 0;
}

/* ----- テーブル ----- */
#contents table {
width: 100%;
margin: 0 0 50px;
background: #ffffff;
border-collapse: collapse;
border-top: 1px solid;
border-bottom: 1px solid;
}
#contents table colgroup.item {
width: 17em;
background: var(--light-bgcol);
}
#contents table colgroup.explain {

}
#contents table tr {
border-bottom: 1px var(--dark-bgcol) solid;
}
#contents table tr:last-child {
border-bottom: none;
}
#contents table th,
#contents table td {
padding: 20px;
vertical-align: top;
line-height: 1.8;
}
#contents table th {
position: relative;
text-align: left;
}
#contents table td p {
margin: 15px 0 0;
font-size: 1rem;
line-height: 1.6;
}
#contents table td ul li {
margin: 0 0 20px;
}
#contents table td ul li:last-child {
margin: 0;
}
/* 必須・任意マーク */
#contents table th strong,
#contents table th span {
position: absolute;
right: 15px;
display: inline-block;
margin: 0.2rem 0 0;
padding: 5px 8px 3px;
font-size: 0.85rem;
font-weight: normal;
color: #ffffff;
}
#contents table th strong {
background: var(--accent5-col);
}
#contents table th span {
background: #a8a8a8;
}

/* ----- フォーム部品 ----- */
#contents form input[type="text"],
#contents form input[type="email"],
#contents form input[type="tel"],
#contents form input[type="url"],
#contents form textarea,
#contents form select {
border: 2px #7f7f7f solid;
border-radius: 6px;
font-size: 1rem;
font-family: 'NotoSansJP-Reg', sans-serif;
}

#contents form input[type="text"],
#contents form input[type="email"],
#contents form input[type="tel"],
#contents form input[type="url"] {
width: 100%;
padding: 7px;
}
#contents form input::placeholder,
#contents form textarea::placeholder {
color: #b7b7b7;
}

#contents form textarea {
display: block;
width: 100%;
height: 18em;
resize: vertical;
padding: 7px;
line-height: 1.4;
}

#contents form input[type="checkbox"] {
transform: scale(1.3);
margin: 0 10px 0 0;
}

#contents form div.privacy {
margin: 0 0 30px;
padding: 30px;
border: 1px var(--dark-bgcol) solid;
text-align: center;
}
#contents form div.privacy p.agree {
margin: 0 0 20px;
}

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



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

#contents div.explain {
margin: 0 0 50px;
}
#contents div.explain ul {
margin: 30px 0 0;
padding: 25px 20px 25px 35px;
}

/* ----- テーブル ----- */
#contents table {
margin: 0 0 30px;
}
#contents table colgroup.item {
width: auto;
}
#contents table th,
#contents table td {
display: block;
}
#contents table th {
padding: 15px 15px;
}
#contents table td {
padding: 15px 5px 30px;
background: #ffffff;
}

/* ----- フォーム部品 ----- */
#contents form div.privacy {
padding: 30px 10px;
}
#contents form div.privacy p.agree {
margin: 0 0 30px;
line-height: 1.5;
}

#contents form div.submit input {
padding: 25px 50px;
font-size: 1.1rem;
}
#contents form div.submit input:hover {
background: var(--accent2-col);
}
#contents form div.submit input[disabled] {
background: #999999;
}

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



/*
==================================================
  スクリプト内
==================================================
*/

#contents > section {
margin: 0;
padding: 0;
}
#contents > section:first-child {
padding: 0;
}
#contents section h2 {
margin: 0 0 30px;
font-size: 2rem;
}
#contents section p {
line-height: 2;
}

#contents section div.message {
margin: 30px 0 0;
line-height: 1.5;
}
#contents section div.message strong {
color: #e51919;
}
#contents section div.message ul {
margin: 0 0 0 1.2em;
list-style-type: disc;
}
#contents section div.message ul li {
margin: 0 0 10px;
line-height: 1.5;
}

#contents #check table {
margin: 30px 0 50px;
}

#contents #correction {
margin: 80px 0 0;
padding: 80px 0 0;
border-top: 1px solid;
}
#contents #correction table {
margin: 30px 0 50px;
}
td.mark {
background: #f7eded;
}

#contents #correction form div.privacy p {
line-height: 1;
}
#contents #correction form div.privacy p.agree {

}

#contents section p.back-top {
margin: 50px 0 0;
}



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

#contents section h2 {
margin: 0 0 20px;
font-size: 1.4rem;
}
#contents section p {
line-height: 1.8;
}

#contents section div.message {
margin: 30px 0 0;
}
#contents section div.message ul li {
margin: 0 0 10px;
}

#contents #check table {
margin: 30px 0 50px;
}

#contents #correction {
margin: 50px 0 0;
padding: 50px 0 0;
}
#contents #correction table {
margin: 30px 0 30px;
}

#contents #correction form div.privacy p.agree {
line-height: 1.5;
}

#contents section p.back-top {
margin: 50px 0 0;
}


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


