@charset "utf-8"; /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */ /* */ /* ● form.css */ /* フォーム */ /* ・フォーム関連全般 */ /* */ /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */ /* ContentsDivision --------------------------------------------------- */ .ContentsDivision { } /* ++++++++++++++++++++++++++++++++++++++++++++++++ */ /* Form Setting [Common] */ /* ++++++++++++++++++++++++++++++++++++++++++++++++ */ /* FormItem (入力枠 1つ分) --------------------------------------------------- */ .FormItem{ margin: 0.5em 0; /* 入力枠の共通スタイル */ input[type='text'], input[type='password'], input[type='date'], input[type='number'], input[type='tel'], input[type='mail'], select{ line-height: 1.25; } input[type='text'], input[type='password'], input[type='date'], input[type='number'], input[type='tel'], input[type='mail'], input[type='file'], select, textarea{ max-width: 100%; width: calc(100% - 5px); border: 1px solid #aaa; border-radius: 0.5em; font-size: 1.4rem; padding: 0.75em 0.5em; margin-top: 2.5px; margin-bottom: 2.5px; //margin: 2.5px; background: #fff; vertical-align: middle; box-shadow: none; box-sizing: border-box; font-family: inherit; box-shadow: 0.25rem 0.25rem 0 rgba(0,0,0,0.05) inset; } .RadioButtonGroup, .CheckBoxGroup{ border-radius: 0.5em; padding: 1em 0.5em; } input[type='text'], input[type='password'], input[type='date'], input[type='number'], input[type='tel'], input[type='mail'], textarea{ appearance: none; } input[type='number'] { width: 3.5em; text-align: right; -webkit-appearance: none; -moz-appearance: textfield; margin-right: 0.25em; } input[type='file']{ //background: none; cursor: pointer; } select{ position: relative; min-width: 8em; } .wrap_select{ position: relative; display: inline-block; @include media-query(under-bp-m) { display: block; } &::before{ content: ""; position: absolute; right: 0.75em; top: 50%; z-index: 1; margin-top: -4px; width: 5px; height: 5px; border-top: 2px solid #000; border-right: 2px solid #000; transform: rotate(135deg) translate3d(0, 0, 0); pointer-events: none; line-height: 1.1; vertical-align: bottom; } select{ position: static; width: auto; padding-right: 1.75em!important; cursor: pointer; appearance: none; &::-ms-expand { display: none; } &:-moz-focusring { color: transparent; text-shadow: 0 0 0 #828c9a; } } } textarea{ width: 100%; height: 12em; } .TelGroup, .FaxGroup{ input[type].InputTel{ width: 6em; text-align: center; } input[type].InputTel2{ width: 5em; } } input[type].InputZip{ width: 10em; text-align: left; margin: 0 3px; } .ZipGroup{ input[type].InputZip{ text-align: center; } input[type].InputZip1{ width: 5em; } input[type].InputZip2{ width: 6em; } } input[type='checkbox'], input[type='radio']{ margin-right: 0.625em; } .RadioButtonGroup, .CheckBoxGroup{ letter-spacing: -0.5em; label{ letter-spacing: 0em; display: inline-flex; align-items: center; justify-content: flex-start; margin: 0.25em; white-space: nowrap; border-radius: 0.5em; padding: 0.5em 1.0em; background: rgba(0,0,0,0.05); @include media-query(under-bp-m) { min-width: calc(50% - 0.5em); } &:not(.Invalid){ cursor: pointer; html.PcView &:hover{ background: rgba($main-color,0.1); } &.Checked { color: #fff; background: $main-color!important; } } input[type='number'], input[type='text']{ margin: -1em 0.25em; border-color: rgba(0,0,0,0.25); padding-top: 0.25em; padding-bottom: 0.25em; line-height: 1; vertical-align: baseline; } } } } /* placeholder */ ::placeholder { color: rgba($text-color, 0.5); font-weight: normal!important; font-size: 1.2rem; } input:placeholder-shown, textarea:placeholder-shown{ background: rgba(255,255,255,0.75); } /* focus時 */ input:not([readonly]):focus, select:not([readonly]):focus, textarea:not([readonly]):focus{ border: 1px solid $main-color; //box-shadow: 0 0 1em $main-color; } /* エラー時 */ .form-error:not([type='radio']), .form-error:not([type='checkbox']), .RadioButtonGroup.form-error, .CheckBoxGroup.form-error{ border: 2px solid #f00!important; } .form-error-msg{ color: #f00; display: block; font-size: $font-size-s; } html.safari .form-error[type='radio'], html.safari .form-error[type='checkbox']{ background: #333; } /* readonly */ input[readonly], select[readonly], textarea[readonly]{ border: none!important; background: none!important; box-shadow: none!important; } /* invalid */ input[invalid], select[invalid], textarea[invalid]{ color: #777!important; background: #ccc!important; box-shadow: none!important; border-color: #aaa; } // フローティングラベル .floating-label-field{ .floating-label { color: $main-color; font-size: 1.2rem; opacity: 0; padding: 0.5em 10px; pointer-events: none; position: absolute; text-overflow: ellipsis; text-align: left; transform: translateY(3px); transition: all .2s ease-out; } &.field-not-empty, &.floating-label-alway-show{ .floating-label { opacity: 1; transform: none; } .floating-input { padding-bottom: 0.5em; padding-top: 1.5em; } } }