@charset "UTF-8";
/* CSS Document */

*{
    line-height: 1.6em;
    box-sizing: border-box;
    color: #eee;
    font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN","Arial","meiryo",sans-serif;
}
body{
    background-color:#000;
}

/* 共通 */
textarea,input,select {
    width: 100%;
    background-color: #1a1a1a;
    border: 1px solid #333;
    padding: 0.5em 0.8em;
    color: #eee;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 16px;
    outline: none;
    transition: 0.3s all;
}
textarea {
    height: 120px;
}
select{
    border-radius: 0px;
}
input:focus,
textarea:focus{
    border: 1px solid #b2945c;
}
label{
    display: block;
    font-size: 14px;
    transition: border-color 0.3s;
}
p{
    margin-bottom: 0.5em;
}
/* End 共通 */

/* ヘッダー */
#himawari_logo {
    display: block;
    width: 250px;
    margin: 0 auto 1em;
}
header .container {
    padding: 40px;
}
h1 {
    font-size: 18px;
    text-align: center;
    line-height: 1.75;
}
/* End ヘッダー */

/* フォーム本体 */
.form__area {
    max-width: 640px;
    margin: 0 auto 100px;
    padding: 40px;
    border: 1px solid #333;
}
.item__info{
    margin-top: 1em;
    padding-bottom: 40px;
    border-bottom: 1px solid #333;
}
.form__group {
    padding: 40px 0px;
    border-bottom: 1px solid #333;
}
.form__title{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 1.5em;
}
.form__title__text{
    font-size: 22px;
    color: #eee;
}

.tip{
    display: inline-block;
    padding: 0.25em 0.4em;
    margin:0em 1em;
    font-size: 12px;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.tip__req{
    color: #fff;
    background-color: #dc3545;
}
.tip__req:before{
    content: "必須";
}
.tip__opt{
    color: #fff;
    background-color: #6c757d;
}
.tip__opt:before{
    content: "任意";
}
.select__btn{
    margin: 0.5em 0;
}
.select__btn input{
    display: none;
}
.select__btn label {
    display: inline-block;
    padding: 0.5em;
    margin-right: 0.5em;
    margin-bottom:1em;
    font-size: 14px;
    border: 1px solid #666;
    cursor: pointer;
}
.select__btn label span{
    display: block;
    transition: 0.3s all;
}
.select__btn label:hover span{
    color: #bbb;
}
.select__btn input:disabled + label{
    border: 1px solid #333;
}
.select__btn input:disabled + label span{
    color: #999;
}
.select__btn input:checked + label{
    opacity: 1.0;
    color: #b2945c;
    border: 1px solid #b2945c;
}
.select__btn input:checked + label span{
    color: #b2945c;
}
.form__desc{
    width: 100%;
}
.form__desc small{
    display: block;
    margin: 0.5em 0;
    color: #999;
    font-size: 12px;
}
.input__addon{
    display: flex;
    max-width: 150px;
}
.input__addon input{
    width: calc(100% - 4em);
}
.input__append{
    width: 4em;
    padding: 0.5em 0.8em;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    background-color: #111;
    text-align: center;
}
input[name="予算・希望金額"]{
    text-align: right;
}
.footer__btn{
    padding: 40px;
    display: flex;
    justify-content: center;
}
.btn__confirm,
.btn__prev,
.btn__send{
    position: relative;
    padding: 0.5em 3em;
    margin: 0 10px;
    text-decoration: none;
    text-align: center;
    transition: 0.3s all;
    font-size: 14px;
}
.btn__confirm,
.btn__prev{
    border: 1px solid #1a1a1a;
    background-color: #111;
}
.btn__confirm:hover,
.btn__prev:hover{
    color: #b2945c;
    border-color: #b2945c;
}
.btn__send{
    background-color: #dc3545;
}
.btn__send:hover{
    background-color: #981e2a;
}
.btn__confirm:after,
.btn__prev:before,
.btn__send:after{
    position: absolute;
    font-family: 'Material Icons';
}
.btn__confirm:after,
.btn__send:after{
    content: "keyboard_arrow_right";
    right: 0.8em;
    transition: 0.3s right;
}
.btn__prev:before{
    content: "keyboard_arrow_left";
    left: 0.8em;
    transition: 0.3s left;
}
.btn__confirm:hover:after,
.btn__send:hover:after{
    right: 0.5em;
}
.btn__prev:hover:before{
    left: 0.5em;
}
/* End フォーム本体 */

/* 商品情報エリア */
.item__image{
    width: 80%;
    max-width: 240px;
    margin-bottom: 20px;
}
.item__image img{
    display: block;
    width: 100%;
}
.item__id{
    margin-bottom: 1.5em;
}
.item__id span,
.item__name span{
    display: block;
    line-height: 1.4em;
}
.info__label{
    font-size: 14px;
    color: #999;
}
/* End 商品情報エリア */

/* 完了画面 */
.thanks{
    display: block;
    line-height: 1.4;
    font-size: 36px;
    text-align: center;
    margin-bottom: 0.5em;
}
img[alt="OK"],
img[alt="NG"]{
    display: block;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 0.5em;
}
/* End 完了画面 */