@charset "UTF-8";
/* ----入力フォーム共通--- */
input, button, select, textarea {
 font-family: inherit;
 font-size: inherit;
 line-height: inherit;
}
input[type="text"], input[type="tel"], input[type="email"], input[type="search"], input[type="password"], input[type="url"], input[type="number"] {
 border: 1px solid #ccc;
 background-color: #fff;
 padding: 11px 0px 11px 6px;
 border-radius: 4px;
}
select, textarea {
 padding: 9px;
 border: 1px solid #ccc;
 background-color: #fff;
}
input[type="text"]:hover, input[type="tel"]:hover, input[type="email"]:hover, input[type="search"]:hover, input[type="password"]:hover, input[type="url"]:hover, input[type="number"]:hover {
 border: 1px solid #666;
}
select:hover, textarea:hover {
 border: 1px solid #666;
}
input[type="radio"] {
 width: 18px;
 height: 18px;
 vertical-align: middle;
 margin-right: 5px;
}
label.radio {
 cursor: pointer;
}
input[type="radio"] {
 cursor: pointer;
}
input[type="radio"] + label {
 cursor: pointer;
}
.block-order-estimate--continueous-sales input[type="checkbox"], input[type="checkbox"][name="cart_goods"], input[type="checkbox"][name="goods"], input[type="checkbox"][name="register_customer"], .block-order-gift-select--delivery-dest-goods-name label input[type="checkbox"], .block-order-estimate--novelty-item-goods input[type="checkbox"] .block-order-gift--novelty-item-goods input[type="checkbox"] {
 display: inline;
}
input[type="checkbox"] {
 display: none;
}
input[type="checkbox"]:checked + label:before {
 background: #458b13;
 border: 1px solid #458b13;
}
input[type="checkbox"]:checked + label:after {
 opacity: 1;
}
input[type="checkbox"] + label {
 cursor: pointer;
 position: relative;
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
 display: inline-block;
 width: auto;
 padding: 0 1em 0 44px;
 line-height: 28px;
 margin: 10px 0;
}
input[type="checkbox"] + label:before {
 content: '';
 display: block;
 width: 28px;
 height: 28px;
 border: 1px solid #bfbfbf;
 border-radius: 4px;
 position: absolute;
 left: 0;
 top: calc(50% - 14px);
}
input[type="checkbox"] + label:after {
 content: '';
 display: block;
 width: 8px;
 height: 14px;
 margin-top: -7px;
 opacity: 0;
 position: absolute;
 top: calc(50% - 2px);
 left: 10px;
 border-right: 3px solid #fff;
 border-bottom: 3px solid #fff;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
 z-index: 1;
}
.block-order-estimate--novelty-item-goods input[type="radio"], .block-order-gift-confirmation--novelty-item-goods input[type="radio"], input[type="radio"][name="sort"], input[type="radio"][name="noshi_bag"], input[type="radio"][name="use"], input[type="radio"][name="noshi_nameprint"], input[type="radio"][name="noshi_paper"], input[type="radio"][name="noshi_purpose"], input[type="radio"][name="noshi_wrap"], dl.block-order-method--date-spec input[type="radio"][name="method--date-spec"] {
 display: inline;
}
input[type="radio"] {
 display: none;
}
input[type="radio"][disabled] + label:before {
 background: #f3f3f3;
 border: 1px solid #bfbfbf;
}
input[type="radio"]:checked + label:before {
 background: #458b13;
 border: 1px solid #458b13;
}
input[type="radio"]:checked + label:after {
 opacity: 1;
}
input[type="radio"] + label {
 cursor: pointer;
 position: relative;
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
 display: inline-block;
 width: auto;
 padding: 0 1em 0 44px;
 line-height: 28px;
 margin: 10px 0;
}
input[type="radio"] + label:before {
 content: '';
 display: block;
 width: 28px;
 height: 28px;
 border: 1px solid #bfbfbf;
 border-radius: 50%;
 position: absolute;
 left: 0;
 top: calc(50% - 14px);
}
input[type="radio"] + label:after {
 content: '';
 display: block;
 width: 8px;
 height: 14px;
 margin-top: -7px;
 opacity: 0;
 position: absolute;
 top: calc(50% - 2px);
 left: 10px;
 border-right: 3px solid #fff;
 border-bottom: 3px solid #fff;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
 z-index: 1;
}
label input[type="checkbox"] {
 display: inline;
}
select {
 cursor: pointer;
 border: 1px solid #bfbfbf;
 border-radius: 4px;
 width: auto;
 padding: 11px 2.5em 11px 1.5em;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 background-image: url("../../img/usr/common/icon_delta.png");
 background-position: calc(100% - 1em) center;
 background-size: 12px 10px;
 background-repeat: no-repeat;
}
select::-ms-expand {
 display: none;
}
input[type="text"][disabled] {
 background: #dcdcdc;
 cursor: not-allowed;
}
/* ----ボタン--- */
.btn {
 display: inline-block;
 margin: 0;
 text-align: center;
 vertical-align: middle;
 cursor: pointer;
 white-space: nowrap;
 padding: 0.5em 2em;
 border-radius: 4px;
}
.btn:hover, .btn:focus {
 text-decoration: none;
}
.btn:active, .btn.active {
 outline: 0;
 -webkit-box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.125);
 box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.125);
}
.btn.disabled, .btn[disabled], .btn.disabled:hover, .btn[disabled]:hover, .btn.disabled:active, .btn[disabled]:active {
 cursor: not-allowed;
 opacity: 0.65;
 -webkit-box-shadow: none !important;
 box-shadow: none !important;
 pointer-events: none;
}
.btn-default {
 color: #458b13;
 border: solid 2px #458b13;
 background-color: #fff;
}
/* btn-back */
.btn-primary {
 color: #fff;
 border: solid 2px #e8731c;
 background-color: #e8731c;
}
.btn-primary-regular {
  color: #fff;
  border: solid 2px #458b13;
  background-color: #458b13;
}
.btn-secondary {
 border: solid 2px #458b13;
 background-color: #fff;
}
.btn-secondary[name='btncancel'] {
 color: #fff;
 border: solid 2px #9a9a9a;
 background-color: #9a9a9a;
}
.btn-danger {
 color: #fff;
 border: solid 2px #df253b;
 background-color: #df253b;
}
.hidden-btn {
 position: absolute;
 left: -9999px;
 width: 1px;
 height: 1px;
}
.block-member-registration-completed--forward-to-mypage, .block-purchase-history-detail--add-goods {
 color: #fff;
 border: solid 1px #458b13;
 background-color: #458b13;
}
.block-favorite--delete-item .btn-danger, .block-arrival-notice-list--delete-item .btn-danger {
 color: #fff;
 border: solid 1px $btn2;
 background-color: $btn2;
}
/* ----画面上部メッセージ--- */
.alert {
 margin-top: 5px;
 padding: 10px 10px 10px 30px;
 margin-bottom: 5px;
 position: relative;
 border: 1px solid #f2dedc;
 color: #df253b;
 background-color: #f2dedc;
}
.alert:before {
 font-family: FontAwesome;
 content: "\f071";
 position: absolute;
 left: 10px;
}
.success {
 margin-top: 5px;
 padding: 10px 10px 10px 30px;
 margin-bottom: 5px;
 position: relative;
 border: 1px solid #f4fcff;
 color: #2badde;
 background-color: #f4fcff;
}
.success:before {
 font-family: FontAwesome;
 content: "\f05a";
 position: absolute;
 left: 10px;
}
/* ----入力フォームタイトル--- */
.legend {
 margin: 40px 0 20px;
 padding: 0 0 5px 2px;
 font-size: 26px;
 font-weight: normal;
 border-bottom: #999 1px solid;
}
/* ----縦型入力フォーム--- */
.fieldset-vertical {
 margin-top: 10px;
 margin-bottom: 10px;
}
.fieldset-vertical .form-group {
 margin: 5px 0 10px 0;
}
.fieldset-vertical .form-label, .fieldset-vertical .constraint {
 margin: 0 0 5px 0;
}
.fieldset-vertical .form-label {
 padding: 10px;
 margin-right: 10px;
 text-align: left;
 background: #f3f3f3;
 vertical-align: middle;
}
.fieldset-vertical .form-label label {
 font-weight: bold;
}
.fieldset-vertical .form-control {
 clear: both;
}
/* ----横型入力フォーム--- */
.fieldset {
 margin-top: 10px;
 margin-bottom: 10px;
 width: 100%;
}
.fieldset .form-group {
 display: table;
 width: 100%;
 border-left: #c9c9c9 1px solid;
 border-right: #c9c9c9 1px solid;
 border-bottom: #c9c9c9 1px solid;
}
.fieldset .form-group:nth-of-type(1) {
 border-top: #c9c9c9 1px solid;
}
.fieldset .form-label, .fieldset .constraint, .fieldset .form-control {
 display: table-cell;
}
.fieldset .form-label {
 width: 23%;
 padding: 25px 10px 25px 25px;
 text-align: left;
 background: #f3f3f3;
}
.fieldset .form-label label {
 font-weight: bold;
}
.fieldset .constraint {
 width: 65px;
 padding: 5px;
 background: #f3f3f3;
}
.fieldset .form-control {
 padding: 5px 0 5px 20px;
}
.fieldset.block-member-info--items-magazineline .form-control {
 padding: 5px 20px 5px 20px;
}
/* ----入力支援--- */
.form-error {
 display: block;
 color: #df253b;
}
.required:after {
 display: inline-block;
 padding: 0.2em 0.7em;
 font-size: 13px;
 font-weight: bold;
 text-align: center;
 white-space: nowrap;
 vertical-align: baseline;
 border-radius: 0.25em;
 color: #fff;
 background-color: #df253b;
 content: "必須";
 border-radius: 13px;
}
.help-block {
 display: block;
 font-size: 13px;
 margin-top: 5px;
 margin-bottom: 15px;
 color: #737373;
}
.count-msg-another {
 display: block;
 font-size: 11px;
 margin-top: 5px;
 color: #555;
}
.count-msg {
 display: block;
 font-size: 13px;
 margin-top: 5px;
 color: #df253b;
 font-weight: bold;
}
/* ----入力フォームボタン--- */
.action-buttons {
 margin-top: 30px;
 width: 100%;
 text-align: center;
 display: block;
}
.action-buttons + .action-buttons {
 margin-top: 10px;
}
.action {
 display: inline;
 margin-left: 10px;
 margin-right: 10px;
}
.action .btn {
 margin-top: 10px;
 padding: 15px 20px 13px;
 font-size: 22px;
 min-width: 400px;
}
.block-thumbnail-t .action .btn {
 margin: 0 auto 20px;
 padding: 4px 15px 3px;
 font-size: 17px;
 width: 210px;
 min-width: 200px;
}
.block-credit-card-confirmation--update-confirmation .action {
 display: inline;
 margin: 0px;
}
/* ----ラジオボタン、チェックボックス--- */
.radio, .checkbox {
 margin-right: 10px;
}
/* ----EFO--- */
.efo-icon {
 border: none;
 vertical-align: middle;
}
input[type="text"].efo-error, input[type="tel"].efo-error, input[type="email"].efo-error, input[type="search"].efo-error, input[type="password"].efo-error, input[type="url"].efo-error, input[type="number"].efo-error {
 background-color: #f2dede;
}
select.efo-error, textarea.efo-error {
 background-color: #f2dede;
}
input[type="text"].efo-valid, input[type="tel"].efo-valid, input[type="email"].efo-valid, input[type="search"].efo-valid, input[type="password"].efo-valid, input[type="url"].efo-valid, input[type="number"].efo-valid {
 background-color: #e9f2d7;
}
select.efo-valid, textarea.efo-valid {
 background-color: #e9f2d7;
}
/* add */
.block-order-gift-dest--cart-back a {
 color: #458b13;
}
/* 会員登録住所2の※ */
.block-member-info--addr2 .block-member-info--item-message {
 font-size: 14px;
 color: #f00;
}
/* メルマガ名 */
.block-mail-news--register-items .block-mail-news--mail:nth-of-type(1) .form-control label {
 font-weight: bold;
 font-size: 16px;
}

/* 調整 */
.block-order-estimate--register-customer-checkbox input[type="checkbox"] {
  width: 24px;
  height: 22px;
  vertical-align: bottom;
  margin-top: 3px;
  margin-right: 2px;
  accent-color: orangered;
}
.block-order-estimate--pwd-textbox input[type="password"] {
  padding: 5px;
  margin-top: 2px;
  width: 100%;
}

/*# sourceMappingURL=base_form.css.map */