/*
  form共通CSS
  ver1.0
  作成日：2010/11/30
  更新日：2017/5/18
  更新内容：SP小規模改善（見出し等のデザイン修正）
  更新者：VMサービス部デザイングループ　寺中、田中、佐藤
*/

button::-moz-focus-inner, input::-moz-focus-inner {
    padding: 0;
    border: 0;
}

input[type="search"] {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-appearance: textfield;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

label, input, button, select, textarea {
    font-size: 1em;
    font-weight: normal;
    line-height: 20px;
}

select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input {
    display: inline-block;
    height: 32px;
    padding: 3px 6px;
    margin-bottom: 3px;
    line-height: 26px;
    color: #555555;
    vertical-align: middle;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

textarea {
    height: auto;
    line-height: 1.4em;
}

textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input {
    background-color: #ffffff;
    border: 1px solid #cccccc;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
    -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
    -o-transition: border linear 0.2s, box-shadow linear 0.2s;
    transition: border linear 0.2s, box-shadow linear 0.2s;
}

textarea:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="color"]:focus, .uneditable-input:focus {
    border-color: rgba(82, 168, 236, 0.8);
    outline: 0;
    outline: thin dotted \9;
    /* IE6-9 */
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}

input[type="search2"]:focus, .uneditable-input:focus {
    outline: 0;
}

input[type="radio"], input[type="checkbox"] {
    line-height: normal;
}

select {
    background-color: #ffffff;
    border: 1px solid #cccccc;
}

input[type="submit"] {
    -webkit-appearance: none;
}

input[type="button"] {
    -webkit-appearance: none;
}

input[type="search"] {
    -webkit-appearance: none;
}

select:focus, input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus {
    outline: thin dotted #333;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px;
}

input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly] {
    cursor: not-allowed;
    background-color: #eeeeee;
}

input[type="radio"][disabled], input[type="checkbox"][disabled], input[type="radio"][readonly], input[type="checkbox"][readonly] {
    background-color: transparent;
}

input:focus:invalid, textarea:focus:invalid, select:focus:invalid {
    color: #b94a48;
    border-color: #ee5f5b;
}

input:focus:invalid:focus, textarea:focus:invalid:focus, select:focus:invalid:focus {
    border-color: #e9322d;
    -webkit-box-shadow: 0 0 6px #f8b9b7;
    -moz-box-shadow: 0 0 6px #f8b9b7;
    box-shadow: 0 0 6px #f8b9b7;
}


/* form行共通(ボタン除く) */

.form_row {
    position: relative;
    text-align: left;
}


/* input共通 */

.form_row input {
    position: relative;
    text-align: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}


/* -----------------------------------------------------------------------------
    インプットボックス
-------------------------------------------------------------------------------- */


/* 通常（大） */

.form_row input.input_normal1 {
    width: 95%;
    margin: 2px 2.5%;
}


/* 通常（中） */

.form_row input.input_normal2 {
    width: 40%;
    margin: 2px auto;
}


/* 通常（小） */

.form_row input.input_normal3 {
    width: 25%;
    margin: 2px auto;
}

.form_row input.small {
    width: 25%;
}

.form_row input.middle {
    width: 40%;
}

.form_row input.middle2 {
    width: 80%;
}

.form_row input.big {
    width: 100%;
}

.form_row input.h-mini {
    height: 30px;
    line-height: 30px;
    padding: 5px 0;
}


/* セレクトボックス共通 */

.form_row select {
    height: 32px;
    padding: 3px 6px;
    margin: 3px 0 5px 0;
    text-overflow: ellipsis;
}


/* ラジオボックス共通 */

.form_row .radio div {
    position: relative;
    float: left;
    height: 30px;
}

.form_row .radio input {
    position: relative;
    -webkit-border-radius: 0;
    border-radius: 0;
}

.form_row .radio_label {
    height: 30px;
    line-height: 30px;
    text-align: center;
}


/* チェックボックス共通 */

.form_row .check_box {
    height: 28px;
    text-align: left;
    margin: 3px 3px 6px 14px;
}

.form_row .check_lavel {
    text-align: center;
}

.form_row .check_box_list {
    width: 100%;
    height: 26px;
    text-align: left;
    margin: 2px auto;
}

.form_row .check_box_list input {
    display: inline-block;
    width: 16px;
    height: 16px;
    float: left;
    padding: 0;
    margin: 5px 5px;
}

.form_row .check_box_list label {
    display: inline-block;
    width: 85%;
    height: 16px;
    line-height: 16px;
    padding: 5px 0;
}

.form_row .check_lavel {
    text-align: center;
}


/* テキストエリア */

.form_row textarea {
    padding: 5px;
    margin: 5px 0 10px 14px;
    min-height: 80px;
    text-align: left;
    color: black;
}

.form_row textarea.big {
    width: 85%;
}

.form_row textarea.middle {
    width: 60%;
}


/* -----------------------------------------------------------------------------
    ボタン
-------------------------------------------------------------------------------- */


/* ボタン共通 */

.button_row {
    width: 95%;
    margin: 0 auto;
    padding: 0;
}

.button_row input {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 38px;
    padding: 3px 0;
    margin: 5px 0;
    text-align: center;
    font-size: 1.2em;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    border: 1px solid #bfbfbf;
    background-color: #f2f2f2;
    text-overflow: ellipsis;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}


/* ボタン大 */

.button_row .big {
    width: 100%;
}


/* ボタン中 */

.button_row .middle {
    width: 40%;
}


/* ボタン中2 */

.button_row .middle2 {
    width: 80%;
}


/* ボタン小 */

.button_row .small {
    width: 25%;
}


/*虫眼鏡なし*/

.button_row .exsmall {
    width: 17%
}

.button_row .h-big {
    height: 44px;
    padding-top: 34px;
    font-size: 20px;
    line-height: 20px;
}

.button_row .h-mini {
    height: 30px;
    line-height: 20px;
    padding: 5px 0;
}


/* シンプルなボタン */

.button_row .simple {
    border: 1px solid #bfbfbf;
    background-color: #f2f2f2;
}


/* 通常ボタン */

.button_row .normal {
    border: 1px solid #bfbfbf;
    background-color: #f2f2f2;
}


/* ログインボタン */

.button_row .login {
    border: 1px solid #ff8800;
    background-color: #FFBB33;
    color: #fff;
}


/* 課金ボタン */

.button_row .regist {
    border: 1px solid #CC0000;
    background-color: #FF4444;
    color: #fff;
}


/* docomoボタン */
.button_row .docomo {
    border: 1px solid #830F20;
    background-color: #C31731;
    color: #fff;
}
/* auボタン */
.button_row .au {
    border: 1px solid #CE4108;
    background-color: #F65A1D;
    color: #fff;
}
/* softbankボタン */
.button_row .softbank {
    border: 1px solid #A2A5A8;
    background-color: #BABCBE;
    color: #fff;
}

/* 各種キャリア決済ボタン背景の設定（ログインページ用） */
.bg_docomo{
    background-color: #C31731 !important;
    border-color: #C31731 !important;
}
.bg_au{
    background-color: #eb5505 !important;
    border-color: #eb5505 !important;
}
.bg_softbank{
    background-color: #A2A5A8 !important;
    border-color: #A2A5A8 !important;
}


/* 検索ボタン */

.button_row .search {
    border: 1px solid #bfbfbf;
    text-align: center;
    background-color: #f2f2f2;
    background-image: url(https://vmimg.vm-movie.jp/icon/vm_appli/common/ic_action_search.png);
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: left
}

.button_row .exsearch {
    border: 1px solid #bfbfbf;
    text-align: center;
    background-color: #f2f2f2;
    float: left;
    margin-left: 2%;
}

.button_row .searchcancel {
    float: left;
    margin: 19px 0 0 8px;
    display: block;
    height: 100%;
    padding: 0;
    font-size: 12px
}

.button_row .text_box {
    display: inline-block;
    padding: 3px 6px;
    margin-bottom: 3px;
    line-height: 26px;
    color: #555555;
    vertical-align: middle;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}


/* 左空き（大）ポイント画面で使用 */

.form_row .input_left1 {
    width: 95%;
    margin: 0 0 0 0;
}


/* 警告用 */

.form_row .alert {
    border: 2px solid rgba(255, 0, 0, 0.4);
}


/* パスワード用 */

.form_row .password {
    width: 80%;
}

.form_row .address_mae {
    width: 36px;
    margin-right: 5px;
}

.form_row .address_ato {
    width: 48px;
    margin-left: 5px;
}


/* -----------------------------------------------------------------------------
    セレクトボックス
-------------------------------------------------------------------------------- */

select.big {
    width: 95%;
}

select.big_add_icon {
    width: 60%;
}

select .middle {
    width: 40%;
}


/* セレクトボックス年月日用 */

.select_box_ymd {
    width: 100px;
    height: 25px;
    line-height: 25px;
    text-align: left;
}

.select_box_ymd:after {
    clear: both;
}

input.datepicker_calender {
    position: relative;
    width: auto;
    height: 20px;
    line-height: 1 !important;
    padding: 0 !important;
    border: 0;
    background-color: transparent;
    -webkit-box-shadow: 0 0 0 transparent;
    -moz-box-shadow: 0 0 0 transparent;
    box-shadow: 0 0 0 transparent;
    z-index: 10;
}

input.datepicker_calender:focus {
    border-color: transparent;
    border: 0 transparent;
    -webkit-box-shadow: 0 0 0 transparent;
    -moz-box-shadow: 0 0 0 transparent;
    box-shadow: 0 0 0 transparent;
}


/* 支払方法選択リスト */
.pay_select_list {
    position: relative;
    display: block;
    width: 100%;
    height: 24px;
}

.pay_select_list select {
    position: absolute;
    display: inline-block;
    width: 100%;
    height: 24px;
    border: 1px solid #bac0c8;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    overflow: hidden;
    background-color: #fff;
    z-index: 2;
}

.myPoint {
    width: 100%;
    margin: 3% 0;
    border: 2px solid #ccc;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    display: table;
    box-sizing: border-box;
}

.myPoint h4 {
    width: 32%;
    padding: 0.5em 0;
    display: table-cell;
    box-sizing: border-box;
    color: #fff;
    background-color: #1272ba;
    font-size: 80%;
    line-height: 1.2em;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    border-radius: 3px 0px 0px 3px;
    -webkit-border-radius: 3px 0px 0px 3px;
}

.myPoint span {
    background-color: #fff;
    box-sizing: border-box;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    font-size: 180%;
    line-height: 1;
    font-weight: bold;
    width: auto;
    padding: 0 0 0 6%;
    white-space: nowrap;
}

.myPoint .unit {
    width: 17%;
    padding: 0;
    font-size: 80%;
    font-weight: normal;
    text-align: left;
}


/*インクリメント検索フォーム*/

#searchArea {
    display: block;
    font-size: 80%;
    overflow: hidden;
    margin: 0 10px;
    width: auto;
    border: 1px solid #333333;
}

#searchArea input[type="text"] {
    margin: 0 0 0 0;
    padding: 0.2em 0.4em;
    border: 1px solid #eee;
    border-radius: 3px 0 0 3px;
    height: 100%;
    vertical-align: middle;
    box-sizing: border-box;
    width: 85%;
    height: 40px;
    float: left;
    display: table-cell;
    font-size: 1.5em;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
    background-color: #eeeeee;
    -webkit-appearance: none;
}

#searchArea input[type="submit"] {
    margin: 0 !important;
    padding: 0.2em 0.4em;
    border: 0px solid #a6a6a6;
    border-radius: 0 3px 3px 0;
    height: 100%;
    vertical-align: middle;
    box-shadow: none;
    color: #fff;
    background-color: #eeeeee;
    background-image: url(https://vmimg.vm-movie.jp/icon/vm_appli/common/ic_search_2x_rev.png);
    background-size: auto 70%;
    background-repeat: no-repeat;
    background-position: center center;
    display: table-cell;
    width: 15%;
    float: none;
    height: 40px;
}

#searchArea input[type="text"]:focus {
    background-color: #fcfcfc;
    border: 1px solid #eee;
}

#searchArea {
    border: 0;
}

#searchArea input::-webkit-input-placeholder {
    color: #cccccc;
}

#searchArea input:-moz-placeholder {
    color: #cccccc;
}


/*サジェスト検索フォーム*/

#suggest_menu {
    padding-left: 10px;
    padding-right: 10px;
}

#suggest_menu #searchArea {
    display: table;
    font-size: 80%;
    overflow: hidden;
    padding: 0 !important;
    width: 100%;
    margin: 0 !important;
}

#suggest_menu #searchArea input[type="text"] {
    padding: 0.2em 0.4em;
    border: 1px solid #eee;
    border-radius: 3px 0 0 3px;
    vertical-align: middle;
    height: 40px;
    display: table-cell;
    font-size: 1.5em;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
    background-color: #eeeeee;
    /*width: auto;*/
}

#suggest_menu #searchArea input[type="submit"] {
    margin: 0 !important;
    padding: 0.2em 0.4em;
    border-radius: 0 3px 3px 0;
    vertical-align: middle;
    color: #fff;
    background-color: #eeeeee;
    background-image: url(https://vmimg.vm-movie.jp/image/android/sptest170412/files/ic_search_2x_rev.png);
    background-size: auto 70%;
    background-repeat: no-repeat;
    background-position: center center;
    display: table-cell;
    /*width: 20%;*/
    height: 40px;
    border-left: 1px solid #fff;
}

#suggest_menu #searchArea input[type="text"]:focus {
    background-color: #fcfcfc;
    border: 1px solid #ddd;
}

#suggest_menu #searchArea span {
    display: table-cell;
    font-size: 12px;
    color: #ffffff;
    font-weight: normal;
    color: #666666;
    padding-left: 2%;
    vertical-align: middle;
}

#suggest_menu #searchArea span a {
    padding: 4px 2%;
    display: inline-block;
    max-height: 26px;
    background-color: #eee;
    border-radius: 1em;
    width: auto;
    min-width: 7em;
    text-align: center;
}

#suggest_menu #searchArea input::-webkit-input-placeholder {
    color: #cccccc;
}

#suggest_menu #searchArea input:-moz-placeholder {
    color: #cccccc;
}
