/*------------------------------------
* PC,SP共通部分
*-------------------------------------*/
/* リセット */
body { margin: 0;}

#lp-form h1,
#lp-form h2,
#lp-form h3,
#lp-form h4,
#lp-form h5,
#lp-form h6,
#lp-form p,
#lp-form ul,
#lp-form ol,
#lp-form li,
#lp-form dl,
#lp-form dt,
#lp-form dd,
#lp-form blockquote {
  margin: 0;
}

#lp-form ul,
#lp-form ol {
  ist-style: none inside;
}

#lp-form img,
#lp-form a img {
  border: 0;
  vertical-align: middle;
}

#lp-form .clearfix {
  zoom: 1;
}

#lp-form .clearfix:after {
  clear: both;
  content: '';
  display: block;
}

#lp-form {
  font-size: 12px;
  line-height: 1.42857143;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #333333;
}

#lp-form table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* Form 項目と入力ボックス間の空白調節*/
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-13, .col-14, .col-15, .col-16, .col-17, .col-18, .col-19, .col-20, .col-21, .col-22, .col-23, .col-24 {
  float: left;
  position: relative;
  min-height: 1px;
}
.col-24 {width: 100%;}
.col-23 {width: 95.83333333%;}
.col-22 {width: 91.66666667%;}
.col-21 {width: 87.5%;}
.col-20 {width: 83.33333333%;}
.col-19 {width: 79.16666667%;}
.col-18 {width: 75%;}
.col-17 {width: 70.83333333%;}
.col-16 {width: 66.66666667%;}
.col-15 {width: 62.5%;}
.col-14 {width: 58.33333333%;}
.col-13 {width: 54.16666667%;}
.col-12 {width: 50%;}
.col-11 {width: 45.83333333%;}
.col-10 {width: 41.66666667%;}
.col-9 {width: 37.5%;}
.col-8 {width: 33.33333333%;}
.col-7 {width: 29.16666667%;}
.col-6 {width: 25%;}
.col-5 {width: 20.83333333%;}
.col-4 {width: 16.66666667%;}
.col-3 {width: 12.5%;}
.col-2 {width: 8.33333333%;}
.col-1 {width: 4.16666667%;}

/*------------------------------------
* PC部分
*-------------------------------------*/
/* 本フォーム全体  */
.form_container_ec {
  width: 940px;
  margin-right: auto;
  margin-left: auto;
  padding-left: 0px;
  padding-right: 0px;
  overflow: hidden;
}
.form_main_container_ec {
  font-size:12px;
  width: 100%;
  border-radius:3px
}
.landing_form_label_ec {
  padding: 15px;
}
/* フォームの項目名ラベル */
.form_box_label {
  background: #cadefc;
  border-bottom: 1px solid #C3C3C3;
  border-top: 1px solid #C3C3C3;
  padding: 2%;
  vertical-align: middle;
  text-align: left;
  color: #333;
  margin-bottom: 2%;
}
span.form_required_ec{
  padding: 2px 4px;
  margin-left: 5px;
  display: inline-block;
  float: right !important;
}
/* フォーム入力ボックス内の基本デザイン */
table.landing_form_ec {
  width: 852px;
  margin: 0 auto;
}
/* フォーム一項目　項目名ラベルと入力ボックス */
.landing_form_ec tr {
  line-height: 18px;
  font-size: 14px;
}
/* フォーム左側　項目名ラベル */
.landing_form_ec th {
  text-align: left;
  vertical-align: top;
  padding: 13px 11px;
}
/* フォーム右側　入力ボックス */
.landing_form_ec td {
  width: 584px;
  padding: 13px 5px;
}
/* フォームトップメッセージ */
.login_message_ec,
.purchase_message_ec {
  font-weight: normal;
  font-size: 14px;
  padding:20px 0px;
  margin-left: 4%;
  margin-right: 4%;
}
/* エラーメッセージ背景 */
.alert-danger_ec {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}

.alert-success_ec {
  background-color: #DFF0D8;
  border-color: #d6e9c6;
  color: #468847;
}

.form_main_container_sp_ec .formError {
  width: 200px;
}

.form_main_container_ec .formError {
  width: 470px;
}

.formError .formErrorContent {
  width: 60%;
  font-size: 100%;
}

.alert_ec {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
p.caution_ec {
  padding-top:10px;
  font-size: 14px;
}
.optin_view_ec,
.agreement_view_ec,
.order_checklist_view_ec {
  margin-left: 4%;
  padding-top: 20px;
  position: relative;
}

.submit_ec {
  padding-top: 2%;
  padding-left: 2%;
  padding-right: 2%;
  padding-bottom: 2%;
  margin-left: auto;
  margin-right: auto;
}

#option_types {
  margin-top: 10px;
}

#option_types:empty {
  display: none;
}

.option_type{
  margin: 5px 0;
}

.option_type label {
  display: inline-block;
  width: 80px;
}

.form_group_ec {
  padding-left: 2%;
  padding-right: 2%;
  position: relative;
}
.form_main_container_ec div.form_group_ec input{
  padding: 10px 10px;
  font-size: 12px;
  margin-left: auto;
  margin-right: auto;
  color: #555555;
  background-color: #ffffff;
  background-image: none;
  border: 1px solid #cccccc;
  border-radius: 3px;
  -webkit-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-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form_main_container_ec div.form_group_ec input[type=checkbox]{
  margin-left: 3px;
  margin-right: 3px;
}
.form_main_container_ec div.form_group_ec select{
  padding: 10px 10px;
  height: 40px;
  font-size: 12px;
  margin-left: auto;
  margin-right: auto;
  color: #555555;
  background-color: #ffffff;
  background-image: none;
  border: 1px solid #cccccc;
  border-radius: 3px;
  -webkit-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-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form_main_container_ec div.form_group_ec .disabled-input-ec {
  pointer-events: none;
  background-color: #ccc !important;
  opacity: 0.7;
}
input.input_box_ec { width:70%; }
select.input_box_product_ec { min-width:50%; }
p.input_product_ec { display:inline-block; }
input.input_box_name_ec { width:70%; }
input.input_box_name1_ec { width:70%; }
input.input_box_name2_ec { width:70%; }
input.input_box_kana_ec { width:70%; }
input.input_box_kana1_ec { width:70%; }
input.input_box_kana2_ec { width:70%; }
select.input_box_sex_ec { width: 25%; }
select.input_box_job_ec { width: 70%; }
select.input_box_birth_year_ec { width: 25%; }
select.input_box_birth_month_ec { width: 15%; }
select.input_box_birth_day_ec { width: 15%; }
input.input_box_zip1_ec { width: 50px; }
input.input_box_zip2_ec { width: 60px; }
select.input_box_pref_ec { width: 150px; }
input.input_box_addr1_ec { width: 70%; }
input.input_box_addr2_ec { width: 70%; }
input.input_box_addr3_ec { width: 70%; }
input.input_box_tel_ec { width: 70%; }
input.input_box_tel1_ec { width: 45px; }
input.input_box_tel2_ec { width: 45px; }
input.input_box_tel3_ec { width: 45px; }
input.input_box_fax_ec { width: 70%; }
input.input_box_fax1_ec { width: 45px; }
input.input_box_fax2_ec { width: 45px; }
input.input_box_fax3_ec { width: 45px; }
input.input_box_email_ec { width: 70%; }
input.input_box_email_confirm_ec { width: 70%; }
input.input_box_customer_number_ec { width: 70%; }
select.input_box_card_method_ec { width: 50%; }
select.input_box_card_times_ec { width: 15%; }
input.input_box_card_number_ec { width: 70%; }
select.input_box_card_month_ec { width: 15%; }
select.input_box_card_year_ec { width: 15%; }
input.input_box_card_name_ec { width: 70%; }
input.input_box_password_ec { width: 70%; }
input.input_box_password_confirm_ec { width: 70%; }

p.form_box_label_ec strong { font-weight: bold; }
p.form_box_label_ec label { font-weight: bold; }
div.form_group_ec p {}
div.form_group_ec span { font-weight: bold; }
div.scheduled_delivery_date_text_ec {
  font-size: 14px;
  line-height: 20px;
}

div.pre_ordered_delivery_description_text_ec {
  font-size: 14px;
  line-height: 20px;
}

.preview_container_ec > table th,
.preview_container_ec > table td {
  border: 1px solid #d0dcec;
}

.table_bordered_ec {
  border: 0px !important;
}

.table_ec {
  width: 100%;
  max-width: 100%;
}

.table_ec tr > .pull_right_ec {
  text-align: right;
}

.table_ec tr > th.product_name_ec {
  width: 60%;
}

.table_ec tr > th.product_price_ec {
  width: 15%;
}

.table_ec tr > th.product_quantity_ec {
  width: 10%;
}

.table_ec tr > th.product_pickup_available_date_ec {
  width: 15%;
}

.table_ec tr > th.product_sub_total_ec {
  width: 15%;
}

.total_color_ec {
  color: #ff0000;
  font-weight: bold;
}

.without_border_ec {
  border: none !important;
}

/* Paypal */
#paypal-button-container {
  width: 50%;
}

/* Amazon Pay */
.amazon_pay_box_ec {
  border: solid 1px #C3C3C3;
  margin: 10px;
  padding: 20px 0;
  text-align: center;
}

.amazon_pay_title_ec {
  margin: 0 auto 10px auto !important;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  font-size: 25px;
  color: #df1800;
  font-weight: bold;
}

.amazon_pay_subtitle_ec {
  margin: 0 auto 10px auto !important;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  font-size: 20px;
  color: #e6a300;
}

.amazon_pay_message_ec {
  margin: 0 auto;
  font-weight: bold;
  text-align: center;
}

.amazon_pay_not_use_message_ec {
  height: 32px;
  margin: 0 auto !important;
  padding: 0;
  text-align: center;
  overflow: hidden;
  white-space: nowrap;
  font-size: 15px;
  color: #e6a300;
}

.amazon_pay_button_all_ec {
  margin: 20px auto 20px;
  width: 300px;
}

.amazon_pay_button_wallet_ec {
  padding-top: 15px;
  margin-left: -25px;
}

.amazon_pay_button_wallet_ec input.billing_agreement_ec {
  visibility: hidden;
  font-size: 0px !important;
}

.address_book_widget_wrapper_ec {
  height: 228px;
}

.wallet_widget_wrapper_ec {
  height: 228px;
  width:417px;
  float:left;
  margin-right:6px;
}

.consent_widget_wrapper_ec {
  height:193px;
  width:417px;
  float:left;
  margin-top: 5px;
}

.consent_wrapper_ec {
  height: 30px;
  width: 405px;
  color: white;
  background: red;
  vertical-align: middle;
  display: table-cell;
  padding: 0 10px;
  border-radius: 5px;
  position: relative;
}

.consent_wrapper_ec > span.consent_message_ec {
  padding: 0 0 0 10px;
}

.consent_wrapper_ec > span.consent_mandatory_ec {
  float: right;
  background: white;
  color: red;
  padding: 0 4px;
}

.consent_wrapper_ec > input.consent_checkbox_ec {
  visibility: hidden;
}

/* AmazonPay popup >> */
.amazon_pay_popup_box_ec {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: rgba(0, 0, 0, 0.7);
  z-index: 99999;
}

.amazon_pay_popup_content_ec {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 30%;
  max-height: 250px;
  padding: 20px;
  background: #ffffff;
}

.amazon_pay_popup_title_ec {
  font-size: 20px;
}

.amazon_pay_popup_close_ec {
  position: absolute;
  top: 10px;
  right: 20px;
  font-size: 30px;
  font-weight: bold;
  text-decoration: none;
  color: #333;
  border-style: none;
  cursor: pointer;
}

.amazon_pay_popup_subtitle_ec {
  margin: 40px 0 30px;
  font-size: 18px;
}

.amazon_pay_popup_body_ec {
  margin: 20px auto 20px;
  width: 300px;
}
/* << AmazonPay popup */

.login_message_box_ec {
  width: 852px;
  margin: 20px auto 0px auto;
  border: solid 1px #C3C3C3;
}

p.login_message_wrapper_ec {
  font-size: 14px;
  margin: 20px 0 !important;
  text-align: center;
}

/* Socialplus */
.socialplus_ec {
  margin: 0 0 10px 0;
  display: flex;
  flex-wrap: wrap;
  padding: 5px;
  justify-content: center;
}

.socialplus_ec .button-container {
  width: calc(33.3% - 10px);
  margin: 5px;
}

.socialplus_ec .button-container .button {
  position: relative;
  display: block;
  color: #fff;
  width: 100%;
  text-align: center;
  border-radius: 4px;
  line-height: 40px;
  padding-left: 40px;
  height: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  overflow: hidden;
  text-decoration: none;
}

.socialplus_ec .button-container .button:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  background-size: 100%;
}

.socialplus_ec .button-container .button:after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  display: inline-block;
  width: 40px;
  height: 100%;
  border-right-style: solid;
  border-right-width: 1px;
}

.socialplus_ec .button-container .btn-facebook {
  background-color: #4267b2;
}

.socialplus_ec .button-container .btn-facebook:before {
  background-image: url("/assets/login-facebook-3e1626e3d5c7df61a277513295e7acb6cf9112c4df07db1b867c7641a7005492.png");
}

.socialplus_ec .button-container .btn-facebook:after {
  border-color: #8298cc;
}

.socialplus_ec .button-container .btn-twitter {
  background-color: #438dc4;
}

.socialplus_ec .button-container .btn-twitter:before {
  background-image: url("/assets/login-twitter-944a487f4746a5ce6557d56ae65421e8b71eaa7fda7a0f74a1bed6b86d345567.png");
}

.socialplus_ec .button-container .btn-twitter:after {
  border-color: #88BEEF;
}

.socialplus_ec .button-container .btn-google {
  background-color: #0056c7;
}

.socialplus_ec .button-container .btn-google:before {
  background-image: url("/assets/login-google-0119f2ac53e7fc66fe39b1e40fc4757c35ceab4bf28021ce0a81d45eee5d2360.png");
}

.socialplus_ec .button-container .btn-google:after {
  border-color: #4285f4;
}

.socialplus_ec .button-container .btn-gplus {
  background-color: #d04d40;
}

.socialplus_ec .button-container .btn-gplus:before {
  background-image: url("/assets/login-gplus-f2319e7179a28ad715384eb95ff7490c6ff1efa46a13c944022702b87ab4be07.png");
}

.socialplus_ec .button-container .btn-gplus:after {
  border-color: #cf837a;
}

.socialplus_ec .button-container .btn-mixi {
  background-color: #cba958;
}

.socialplus_ec .button-container .btn-mixi:before {
  background-image: url("/assets/login-mixi-99e3d6436ac6491642b1ed205a8f6ea2fbc7a349aea04474f1ae3477c27373f5.png");
}

.socialplus_ec .button-container .btn-mixi:after {
  border-color: #e6bc5c;
}

.socialplus_ec .button-container .btn-yahoo {
  background-color: #fe0032;
  border: 0.5px solid #f00;
}

.socialplus_ec .button-container .btn-yahoo:before {
  background-image: url("/assets/login-yahoo-ecc9e51a9724b036b6fd228bdef4855731ad44ae44b75fe1f4af7eb0f59684de.png");
}

.socialplus_ec .button-container .btn-yahoo:after {
  border-color: #fe0032;
}

.socialplus_ec .button-container .btn-rakuten {
  background-color: #b21d23;
}

.socialplus_ec .button-container .btn-rakuten:before {
  background-image: url("/assets/login-rakuten-8e21ab472f9e803e6d89857d15dd46768e21dc685f03156cfd96205df6773a66.png");
}

.socialplus_ec .button-container .btn-rakuten:after {
  border-color: #ae6164;
}

.socialplus_ec .button-container .btn-line {
  background-color: #31ae36;
}

.socialplus_ec .button-container .btn-line:before {
  background-image: url("/assets/login-line-ed8c51d83aae2ebc670a6fdc20afa7dc93ab3205464e89d999349f49f53659c0.png");
}

.socialplus_ec .button-container .btn-line:after {
  border-color: #70C053;
}

/* ecforce-payment */
.ecforce-payment-card-number,
.ecforce-payment-card-expiry,
.ecforce-payment-card-cvv {
  cursor: text !important;
  font-size: 12px !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border: 1px solid #cccccc !important;
  border-radius: 3px !important;
  width: 70% !important;
}
.ecforce-payment-card-number #card-number,
.ecforce-payment-card-expiry #card-expiry,
.ecforce-payment-card-cvv #card-cvv {
  padding: 10px 10px !important;
}

/* payjp */
.payjp-card-number,
.payjp-card-expiry,
.payjp-card-cvv {
  cursor: text !important;
  font-size: 12px !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border: 1px solid #cccccc !important;
  border-radius: 3px !important;
  width: 70% !important;
}
.payjp-card-number #card-number,
.payjp-card-expiry #card-expiry,
.payjp-card-cvv #card-cvv {
  padding: 10px 10px !important;
}

/* fincode */
.fincode-card-number,
.fincode-card-expiry,
.fincode-card-cvv {
  cursor: text !important;
  font-size: 12px !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border: 1px solid #cccccc !important;
  border-radius: 3px !important;
  width: 70% !important;
}
.fincode-card-number #card-number,
.fincode-card-expiry #card-expiry,
.fincode-card-cvv #card-cvv {
  padding: 10px 10px !important;
}

.toggle_text {
  display: none;
}

/* カスタム項目 */
.free_columns-section_ec input {
  width: 70%;
}
.free_columns-section_ec input[type=checkbox], .free_columns-section_ec input[type=radio] {
  width: auto;
  top: -2px;
  position: relative;
  display: inline-block;
  vertical-align: top;
}
.free_columns-section_ec .checkbox-wrapper, .free_columns-section_ec .radio-wrapper {
  margin-top:5px
}
.free_columns-section_ec .checkbox-wrapper>label, .free_columns-section_ec .radio-wrapper>label {
  display: inline-block;
  margin-left: 2px;
  width: 93%;
}
.free_columns-section_ec .form_group_ec label {
  font-weight: normal;
}
.free_columns-section_ec textarea {
  width: 100%;
}
.free_columns-section_ec select {
  width: 70%;
}
.free_columns-section_ec select[multiple]{
  height: 100% !important;
}
.free_columns-section_ec .category-caption-wrapper {
  margin: 1.5em 0 0.8em 3em;
  padding: 1em 0em 1em 1em;
  font-size: 14px;
  font-weight: bold;
  border-left: 5px solid #203594;
  width: 852px;
}
.free_columns-section_ec .category-caption-text {
  display: inline-block;
  width: 90%;
}
.free_columns-section_ec tr.free_column_category-footer td{
  border-left: none;
  border-right: none;
}
.free_columns-section_ec .category-btn-wrapper {
  cursor:pointer ;
  font-size: 14px;
  display:inline-block;
  font-weight: bold;
  color: #010FEE;
  letter-spacing: 0.2em;
}
.free_columns-section_ec .category-btn-wrapper .category-btn:before {
  display:inline-block;
  margin-right: 0.4rem;
  width: 1.9rem;
  height: 1.9rem;
  background-color: #010FEE;
  border-radius: 50%;
  color: #fff;
  text-align: center;
}
.free_columns-section_ec .category-btn-wrapper.category-minus .category-btn:before {
  content:'ー';
  letter-spacing: 0;
  line-height: 1.95rem;
}
.free_columns-section_ec .category-btn-wrapper.category-plus {
  margin: 0.7em 0 0.8em 2em;
  padding: 1em;
}
.free_columns-section_ec .category-btn-wrapper.category-plus .category-btn:before {
  content:'＋';
  letter-spacing: 0;
  line-height: 1.95rem;
  font-weight: bold;
}

/* セット商品 */
.table_ec td.set_item_selected{
  padding-left: 28px;
}

/*------------------------------------
* スマートフォン部分
*-------------------------------------*/
.form_container_sp_ec {
  padding: 0;
  background-size: 100%;
  font-size: 16px;
  position: relative;
  overflow: hidden;
}
.landing_form_label_sp_ec {
  padding: 15px;
}
/* フォーム入力ボックスの基本 */
.form_main_container_sp_ec div.form_group_sp_ec input{
  padding: 8px 4px;
  line-height: 2.4;
  font-size: 16px;
  margin-left: auto;
  margin-right: auto;
}
.form_main_container_sp_ec div.form_group_sp_ec input[type=checkbox]{
  margin-left: 3px;
  margin-right: 3px;
}
.form_main_container_sp_ec div.form_group_sp_ec select{
  height: 50px;
  font-size: 14px;
  margin-left: auto;
  margin-right: auto;
}
.form_group_sp_ec {
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 30px;
  padding-top: 15px;
  position: relative;
}
.form_main_container_sp_ec div.form_group_sp_ec .disabled-input-ec {
  pointer-events: none;
  color: #555;
  background-color: #ccc !important;
  border: 1px solid #cccccc;
  opacity: 0.7;
}
/* フォームトップメッセージ */
.login_message_sp_ec,
.purchase_message_sp_ec {
  font-weight: normal;
  font-size: 14px;
  padding:20px 0px;
  margin-left: 4%;
  margin-right: 4%;
}
/* エラーメッセージ背景 */
.alert-danger_sp_ec {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}

.alert-success_sp_ec {
  background-color: #DFF0D8;
  border-color: #d6e9c6;
  color: #468847;
}

.alert_sp_ec {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.form_main_container_sp_ec {
  width: 100%;
  border-radius:3px
}
span.form_required_sp_ec{
  padding: 2px 4px;
  margin-left: 5px;
  display: inline-block;
}
/* フォームの項目名ラベル */
.form_box_label_sp_ec {
  padding: 2%;
  vertical-align: middle;
  text-align: left;
  margin-bottom: 2%;
}
select.input_box_sp_ec {
  padding: 10px;
  font-size: 14px;
  width: 100%;
  height: 50px;
}
input.input_box_sp_ec { width:98%; }
select.input_box_product_sp_ec { width:98%; }
select.input_box_quantity_sp_ec { width:98%; }
input.input_box_name_sp_ec { width:98%; }
input.input_box_name1_sp_ec { width:45%; }
input.input_box_name2_sp_ec { width:45%; }
input.input_box_kana_sp_ec { width:98%; }
input.input_box_kana1_sp_ec { width:45%; }
input.input_box_kana2_sp_ec { width:45%; }
select.input_box_sex_sp_ec { width:98%; }
select.input_box_job_sp_ec { width:98%; }
select.input_box_birth_year_sp_ec { width: 40%; }
select.input_box_birth_month_sp_ec { width: 25%; }
select.input_box_birth_day_sp_ec { width: 25%; }
input.input_box_zip1_sp_ec { width: 80px; }
input.input_box_zip2_sp_ec { width: 100px; }
select.input_box_pref_sp_ec { width:98%; }
input.input_box_addr1_sp_ec { width:98%; }
input.input_box_addr2_sp_ec { width:98%; }
input.input_box_addr3_sp_ec { width:98%; }
input.input_box_tel_sp_ec { width: 98%; }
input.input_box_tel1_sp_ec { width: 24%; }
input.input_box_tel2_sp_ec { width: 24%; }
input.input_box_tel3_sp_ec { width: 24%; }
input.input_box_fax_sp_ec { width: 98%; }
input.input_box_fax1_sp_ec { width: 24%; }
input.input_box_fax2_sp_ec { width: 24%; }
input.input_box_fax3_sp_ec { width: 24%; }
input.input_box_company_sp_ec { width: 98%; }
input.input_box_email_sp_ec { width:98%; }
input.input_box_email_confirm_sp_ec { width:98%; }
input.input_box_customer_number_sp_ec { width:98%; }
select.input_box_shipping_address_sp_ec { width:98%; }
select.input_box_wrapping_sp_ec { width:98%; }
select.input_box_card_method_sp_ec { width:98%; }
select.input_box_card_times_sp_ec { width:98%; }
input.input_box_card_number_sp_ec { width:98%; }
select.input_box_card_month_sp_ec { width: 25%; }
select.input_box_card_year_sp_ec { width: 25%; }
input.input_box_card_name_sp_ec { width:98%; }
select.input_box_container_payment_schedule_sp_ec { width:98%; }
input.input_box_password_sp_ec { width:98%; }
input.input_box_password_confirm_sp_ec { width:98%; }

p.form_box_label_sp_ec strong { font-weight: bold; }
p.form_box_label_sp_ec label { font-weight: bold; }
div.form_group_sp_ec p {}
div.form_group_sp_ec span { font-weight: bold; }
p.caution_sp_ec {
  padding-top:10px;
  font-size: 14px;
}
p.product_name_sp_ec {
  padding: 0 15px 0 15px;
  font-size: 16px;
}
div.scheduled_delivery_date_text_sp_ec {
  font-size: 14px;
  line-height: 20px;
  padding-left:15px;
  padding-right:15px;
}
.optin_view_sp_ec,
.agreement_view_sp_ec,
.order_checklist_view_sp_ec {
  margin-left: 4%;
  padding-top: 15px;
  position: relative;
}
.submit_sp_ec {
  padding-top: 2%;
  padding-left: 2%;
  padding-right: 2%;
  padding-bottom: 2%
  margin-left: auto;
  margin-right: auto;
}

.pre_ordered_delivery_description_text_sp_ec {
  font-size: 14px;
  line-height: 20px;
  padding-left:15px;
  padding-right:15px;
}

/* カスタム項目 */
.free_columns-section_sp_ec input {
  width: 98%;
}
.free_columns-section_sp_ec input[type=checkbox], .free_columns-section_sp_ec input[type=radio] {
  width: auto;
  top: -1px;
  position: relative;
  display: inline-block;
  vertical-align: top;
}
.free_columns-section_sp_ec .checkbox-wrapper, .free_columns-section_sp_ec .radio-wrapper {
  margin-top:5px
}
.free_columns-section_sp_ec .checkbox-wrapper>label, .free_columns-section_sp_ec .radio-wrapper>label {
  display: inline-block;
  margin-left: 6px;
  width: 90%;
}
.free_columns-section_sp_ec .form_group_ec label {
  font-weight: normal;
}
.free_columns-section_sp_ec textarea {
  width: 100%;
}
.free_columns-section_sp_ec select {
  width: 98%;
}
.free_columns-section_sp_ec select[multiple]{
  height: 100% !important;
}
.free_columns-section_sp_ec .category-caption-wrapper {
  margin: 1em 0;
  padding: 1em 0em 1em 1em;
  font-size: 13px;
  font-weight: bold;
  border-left: 5px solid #203594;
}
.free_columns-section_sp_ec .category-caption-text {
  display: inline-block;
  width: 78%;
}
.free_columns-section_sp_ec tr.free_column_category-footer td{
  border-left: none;
  border-right: none;
}
.free_columns-section_sp_ec .category-btn-wrapper {
  cursor:pointer ;
  font-size: 14px;
  display:inline-block;
  font-weight: bold;
  color: #010FEE;
  letter-spacing: 0.2em;
}
.free_columns-section_sp_ec .category-btn-wrapper .category-btn:before {
  display:inline-block;
  margin-right: 0.4rem;
  width: 1.3rem;
  height: 1.3rem;
  background-color: #010FEE;
  border-radius: 50%;
  color: #fff;
  text-align: center;
}
.free_columns-section_sp_ec .category-btn-wrapper.category-minus .category-btn:before {
  content:'ー';
  letter-spacing: 0;
  line-height: 1.35rem;
}
.free_columns-section_sp_ec .category-btn-wrapper.category-plus {
  padding: 1em;
}
.free_columns-section_sp_ec .category-btn-wrapper.category-plus .category-btn:before {
  content:'＋';
  letter-spacing: 0;
  line-height: 1.35rem;
  font-weight: bold;
}

/* セット商品 */
.table_sp_ec td.set_item_selected{
  padding-left: 28px;
}

/*------------------------------------
* PCデザイン可変部分
*-------------------------------------*/
/* 【PC】フォームの項目名ラベル内必須アイコン */
span.form_required_ec{
  /* セクションラベルの色 */
  background: #7E0F09;
  /* セクションラベルのフォント色*/
  color: #ffffff;
}
/* 【PC】フォームのセクションラベル */
.landing_form_label_ec {
  /* セクションラベルの色 */
  background: #203594;
  /* セクションラベルのフォント色*/
  color: #ffffff;
  /* セクションラベルのフォントサイズ */
  font-size: 18px;
}
/* 【PC】フォーム入力ボックス内の基本デザイン */
table.landing_form_ec {
  border-top: 1px solid #d0dcec;
  border-right: 1px solid #d0dcec;
  background: #FFF;
  border-bottom: 1px solid #999;
}
/* 【PC】フォーム左側　項目名ラベル */
.landing_form_ec th {
  background-color: #e1edfd;
  border-bottom: 1px solid #d0dcec;
  border-left: 1px solid #d0dcec;
  background-color: #e1edfd;
}
/* 【PC】フォーム右側　入力ボックス */
.landing_form_ec td {
  border-bottom: 1px solid #d0dcec;
  border-left: 1px solid #d0dcec;
  background-color: #ffffff;
}
/* 【PC】購入ボタンのデザイン */
.login_button_ec {
  border: 0px;
  width: 400px;
  height: 150px;
  background: url("/assets/default_login_btn-3545ead6f7c1f581390be8bada934a229cd580f4f4830b21c14803de789ad249.png") center;
  background-size: 394px auto;
  background-repeat: no-repeat;
  cursor: pointer;
}
/* 【PC】購入ボタンのデザイン */
.submit_bottom_ec {
  border: 0px;
  width: 400px;
  height: 150px;
  background: url("/assets/default_btn-f6c2a9bc1ad7a90718756cd965847d700d3750ab3c837bf74bcf30dd3d083ea0.png") center;
  background-size: 394px auto;
  background-repeat: no-repeat;
  cursor: pointer;
}
/* 【PC】購入ボタンのデザイン */
.submit_button_complete_ec {
  border: 0px;
  width: 400px;
  height: 150px;
  background: url("/assets/default_order_comp-6baf1ae5951cb6ca295e07a256d9d8ce2e646d315125a11207f4d833c9cca5d3.png") center;
  background-size: 394px auto;
  background-repeat: no-repeat;
  cursor: pointer;
}
/*------------------------------------
* スマートフォンデザイン可変部分
*-------------------------------------*/
/* 【SP】フォームの項目名ラベル内必須アイコン */
span.form_required_sp_ec{
  /* セクションラベルの色 */
  background: #7E0F09;
  /* セクションラベルのフォント色*/
  color: #ffffff;
}

/* 【SP】フォームのセクションラベル */
.landing_form_label_sp_ec {
  /* セクションラベルの色 */
  background: #203594;
  /* セクションラベルのフォント色*/
  color: #ffffff;
  /* セクションラベルのフォントサイズ */
  font-size: 18px;
}

/* 【SP】フォームの項目名ラベル */
.form_box_label_sp_ec {
  background: #cadefc;
  border-bottom: 1px solid #C3C3C3;
  border-top: 1px solid #C3C3C3;
}

/* 【SP】ログインボタンのデザイン */
.login_button_sp_ec {
  border: 0px;
  width: 100%;
  height: 150px;
  background: url("/assets/default_login_btn-3545ead6f7c1f581390be8bada934a229cd580f4f4830b21c14803de789ad249.png") center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  cursor: pointer;
}

/* 【SP】購入ボタンのデザイン */
.submit_bottom_sp_ec {
  border: 0px;
  width: 100%;
  height: 150px;
  background: url("/assets/default_btn-f6c2a9bc1ad7a90718756cd965847d700d3750ab3c837bf74bcf30dd3d083ea0.png") center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  cursor: pointer;
}

.submit_button_complete_sp_ec {
  border: 0px;
  width: 100%;
  height: 150px;
  background: url("/assets/default_order_comp-6baf1ae5951cb6ca295e07a256d9d8ce2e646d315125a11207f4d833c9cca5d3.png") center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  cursor: pointer;
}

.preview_container_sp_ec > table {
  width: 100%;
}

.preview_container_sp_ec > table th {
  background: #cadefc;
}

.preview_container_sp_ec > table,
.preview_container_sp_ec > table tr,
.preview_container_sp_ec > table th,
.preview_container_sp_ec > table td {
  border: 1px solid #C3C3C3;
}

.table_bordered_sp_ec {
  border: 0px !important;
}

.table_sp_ec {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}

.table_sp_ec > thead > tr > th,
.table_sp_ec > tbody > tr > th,
.table_sp_ec > tfoot > tr > th,
.table_sp_ec > thead > tr > td,
.table_sp_ec > tbody > tr > td,
.table_sp_ec > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}

.table_bordered_sp_ec > thead > tr > th,
.table_bordered_sp_ec > tbody > tr > th,
.table_bordered_sp_ec > tfoot > tr > th,
.table_bordered_sp_ec > thead > tr > td,
.table_bordered_sp_ec > tbody > tr > td,
.table_bordered_sp_ec > tfoot > tr > td {
  border: 1px solid #ddd;
}

.table_sp_ec tr > th {
  border-top: 0px;
  background: #F0F0F0;
  font-size: 10px;
}

.table_sp_ec tr > th,
.table_sp_ec tr > td {
  font-size: 12px;
}

.table_bordered_sp_ec tr > th,
.table_bordered_sp_ec tr > td {
  border: 1px solid #e5e5e5 !important;
}

.table_sp_ec th,
.table_sp_ec td {
  vertical-align: middle !important;
  line-height: 20px !important;
  border-top: 1px solid #e5e5e5 !important;
}

.total_color_sp_ec {
  color: #ff0000;
  font-weight: bold;
  border-bottom: 1px solid #eee;
}

/* Amazon Pay */
.amazon_pay_box_sp_ec {
  border: solid 3px #C3C3C3;
  margin: 10px auto;
  padding: 20px 0;
  text-align: center;
}

.amazon_pay_title_sp_ec {
  margin: 0 auto 10px auto !important;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  font-size: 18px;
  color: #df1800;
  font-weight: bold;
}

.amazon_pay_subtitle_sp_ec {
  margin: 0 auto 10px auto !important;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  font-size: 15px;
  color: #e6a300;
}

.amazon_pay_message_sp_ec {
  margin: 0 10px;
  font-weight: bold;
  text-align: center;
}

.amazon_pay_not_use_message_sp_ec {
  margin: 0 10px !important;
  padding: 0 0 10px 0;
  text-align: center;
  font-size: 12px;
  color: #e6a300;
}

.amazon_pay_button_all_sp_ec {
  margin: 20px auto 20px;
  width: 300px;
}

.amazon_pay_button_wallet_sp_ec {
  padding-top: 15px;
  margin-left: -15px;
}

.amazon_pay_button_wallet_sp_ec input.billing_agreement_sp_ec {
  visibility: hidden;
  font-size: 0px !important;
}

.address_book_widget_wrapper_sp_ec,
.wallet_widget_wrapper_sp_ec,
.consent_widget_wrapper_sp_ec {
}

.address_book_widget_wrapper_sp_ec,
.wallet_widget_wrapper_sp_ec,
.consent_widget_wrapper_sp_ec {
}

.consent_wrapper_sp_ec {
  height: 30px;
  color: white;
  background: red;
  padding-top: 5px;
  margin: 10px 0;
}

.consent_wrapper_sp_ec > span.consent_message_sp_ec {
  padding: 0 0 0 10px;
}

.consent_wrapper_sp_ec > span.consent_mandatory_sp_ec {
  float: right;
  background: white;
  color: red;
  padding: 2px 8px;
  margin: 2px 10px;
}

.consent_wrapper_sp_ec > input.consent_checkbox_sp_ec {
  visibility: hidden;
}

/* AmazonPay popup >> */
.amazon_pay_popup_box_sp_ec {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: rgba(0, 0, 0, 0.7);
  z-index: 99999;
}

.amazon_pay_popup_content_sp_ec {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-height: 250px;
  padding: 20px;
  background: #ffffff;
}

.amazon_pay_popup_title_sp_ec {
  font-size: 20px;
}

.amazon_pay_popup_close_sp_ec {
  position: absolute;
  top: 10px;
  right: 20px;
  font-size: 30px;
  font-weight: bold;
  text-decoration: none;
  color: #333;
  border-style: none;
  cursor: pointer;
}

.amazon_pay_popup_subtitle_sp_ec {
  margin: 40px 0 30px;
  font-size: 15px;
}

.amazon_pay_popup_body_sp_ec {
  margin: 20px auto 20px;
  width: 300px;
}
/* << AmazonPay popup */

.login_message_box_sp_ec {
  width: 100%;
  margin: 0 auto;
  border: solid 1px #d0dcec;
}

p.login_message_wrapper_sp_ec {
  font-size: 14px;
  margin: 20px 0 !important;
  text-align: center;
}

/* Socialplus */
.socialplus_sp_ec {
  margin: 0 0 20px 0;
  overflow: hidden;
}

.socialplus_sp_ec .button-container {
  width: 100%;
  float: left;
  padding: 10px 10px 0;
  box-sizing: border-box;
}

.socialplus_sp_ec .button-container .button {
  position: relative;
  display: block;
  color: #fff;
  width: 100%;
  text-align: center;
  border-radius: 4px;
  line-height: 50px;
  padding-left: 20px;
  height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  overflow: hidden;
  text-decoration: none;
}

.socialplus_sp_ec .button-container .button:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  background-size: 100%;
}

.socialplus_sp_ec .button-container .button:after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  display: inline-block;
  width: 50px;
  height: 100%;
  border-right-style: solid;
  border-right-width: 1px;
}

.socialplus_sp_ec .button-container .btn-facebook {
  background-color: #4267b2;
}

.socialplus_sp_ec .button-container .btn-facebook:before {
  background-image: url("/assets/login-facebook-3e1626e3d5c7df61a277513295e7acb6cf9112c4df07db1b867c7641a7005492.png");
}

.socialplus_sp_ec .button-container .btn-facebook:after {
  border-color: #8298cc;
}

.socialplus_sp_ec .button-container .btn-twitter {
  background-color: #438dc4;
}

.socialplus_sp_ec .button-container .btn-twitter:before {
  background-image: url("/assets/login-twitter-944a487f4746a5ce6557d56ae65421e8b71eaa7fda7a0f74a1bed6b86d345567.png");
}

.socialplus_sp_ec .button-container .btn-twitter:after {
  border-color: #88BEEF;
}

.socialplus_sp_ec .button-container .btn-google {
  background-color: #0056c7;
}

.socialplus_sp_ec .button-container .btn-google:before {
  background-image: url("/assets/login-google-0119f2ac53e7fc66fe39b1e40fc4757c35ceab4bf28021ce0a81d45eee5d2360.png");
}

.socialplus_sp_ec .button-container .btn-google:after {
  border-color: #4285f4;
}

.socialplus_sp_ec .button-container .btn-gplus {
  background-color: #d04d40;
}

.socialplus_sp_ec .button-container .btn-gplus:before {
  background-image: url("/assets/login-gplus-f2319e7179a28ad715384eb95ff7490c6ff1efa46a13c944022702b87ab4be07.png");
}

.socialplus_sp_ec .button-container .btn-gplus:after {
  border-color: #cf837a;
}

.socialplus_sp_ec .button-container .btn-mixi {
  background-color: #cba958;
}

.socialplus_sp_ec .button-container .btn-mixi:before {
  background-image: url("/assets/login-mixi-99e3d6436ac6491642b1ed205a8f6ea2fbc7a349aea04474f1ae3477c27373f5.png");
}

.socialplus_sp_ec .button-container .btn-mixi:after {
  border-color: #e6bc5c;
}

.socialplus_sp_ec .button-container .btn-yahoo {
  background-color: #fe0032;
  border: 0.5px solid #f00;
}

.socialplus_sp_ec .button-container .btn-yahoo:before {
  background-image: url("/assets/login-yahoo-ecc9e51a9724b036b6fd228bdef4855731ad44ae44b75fe1f4af7eb0f59684de.png");
}

.socialplus_sp_ec .button-container .btn-yahoo:after {
  border-color: #fe0032;
}

.socialplus_sp_ec .button-container .btn-rakuten {
  background-color: #b21d23;
}

.socialplus_sp_ec .button-container .btn-rakuten:before {
  background-image: url("/assets/login-rakuten-8e21ab472f9e803e6d89857d15dd46768e21dc685f03156cfd96205df6773a66.png");
}

.socialplus_sp_ec .button-container .btn-rakuten:after {
  border-color: #ae6164;
}

.socialplus_sp_ec .button-container .btn-line {
  background-color: #31ae36;
}

.socialplus_sp_ec .button-container .btn-line:before {
  background-image: url("/assets/login-line-ed8c51d83aae2ebc670a6fdc20afa7dc93ab3205464e89d999349f49f53659c0.png");
}

.socialplus_sp_ec .button-container .btn-line:after {
  border-color: #70C053;
}

/* LINE ID 連携 */

.line_ec {
}

.line_ec .button-container.w100 {
  width: 100%;
}

.line_ec .button-container .button {
  position: relative;
  display: block;
  color: #fff;
  width: 100%;
  text-align: center;
  border-radius: 4px;
  line-height: 50px;
  padding-left: 30px;
  height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  overflow: hidden;
  text-decoration: none;
}

.line_ec .button-container .button:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  background-size: 100%;
}

.line_ec .button-container .button:after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  display: inline-block;
  width: 50px;
  height: 100%;
  border-right-style: solid;
  border-right-width: 1px;
}

@media screen and (min-width: 480px) {
  .line_ec {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .line_ec .button-container {
    width: calc(33.3% - 10px);
    margin: 5px;
  }

  .line_ec .button-container .button {
    line-height: 40px;
    padding-left: 40px;
    height: 40px;
  }

  .line_ec .button-container .button:before {
    width: 40px;
    height: 40px;
  }

  .line_ec .button-container .button:after {
    width: 40px;
  }
}

.line_ec .button-container .btn-line {
  background-color: #31ae36;
}

.line_ec .button-container .btn-line:before {
  background-image: image_url('login-line.png');
}

.line_ec .button-container .btn-line:after {
  border-color: #70C053;
}

.line_ec .button-container .btn-line:before {
  background-image: url("/assets/login-line-ed8c51d83aae2ebc670a6fdc20afa7dc93ab3205464e89d999349f49f53659c0.png");
}

.line_sp_ec {
}

.line_sp_ec .button-container.w100 {
  width: 100%;
}

.line_sp_ec .button-container .button {
  position: relative;
  display: block;
  color: #fff;
  width: 100%;
  text-align: center;
  border-radius: 4px;
  line-height: 50px;
  padding-left: 30px;
  height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  overflow: hidden;
  text-decoration: none;
}

.line_sp_ec .button-container .button:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  background-size: 100%;
}

.line_sp_ec .button-container .button:after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  display: inline-block;
  width: 50px;
  height: 100%;
  border-right-style: solid;
  border-right-width: 1px;
}

.line_sp_ec .button-container .btn-line:before {
  background-image: url("/assets/login-line-ed8c51d83aae2ebc670a6fdc20afa7dc93ab3205464e89d999349f49f53659c0.png");
}

.form_container_sp_ec .line_alert_sp_ec {
  font-size: 12px;
  padding: 0px;
}

.line_alert_sp_ec {
  margin: 10px;
}

@media screen and (min-width: 480px) {
  .line_sp_ec {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .line_sp_ec .button-container {
    width: calc(33.3% - 10px);
    margin: 5px;
  }

  .line_sp_ec .button-container .button {
    line-height: 40px;
    padding-left: 40px;
    height: 40px;
  }

  .line_sp_ec .button-container .button:before {
    width: 40px;
    height: 40px;
  }

  .line_sp_ec .button-container .button:after {
    width: 40px;
  }
}

.line_sp_ec .button-container .btn-line {
  background-color: #31ae36;
}

.line_sp_ec .button-container .btn-line:before {
  background-image: image_url('login-line.png');
}

.line_sp_ec .button-container .btn-line:after {
  border-color: #70C053;
  margin: 10px;
  width: 95%;
}

#popup_required_field_check.pc {
  z-index: 99999;
  width: 275px !important;
  float: right;
  padding: 20px;
  font-size: 18px;
  font-weight: bold;
  color: white;
  position: fixed;
  top: 25px;
  right: 25px;
  display: none;
}

#popup_required_field_check.sp {
  z-index: 99999;
  width: 100% !important;
  padding: 10px 0;
  font-size: 18px;
  font-weight: bold;
  color: white;
  position: fixed;
  top: 0;
  display: none;
  text-align: center;
}

#popup_required_field_check.required_field_exists {
  background: rgba(242, 133, 12, 0.8);
}

#popup_required_field_check.required_field_not_exists {
  background: rgba(4, 162, 34, 0.8)
}

.input_required_ec {
  background-color: rgba(242, 133, 12, 0.2) !important;
}

.hide {
  display: none !important;
}
/* 認証基盤 連携 */

.auth_infra_ec {
}

.auth_infra_ec .button-container.w100 {
  width: 100%;
}

.auth_infra_ec .button-container .button {
  position: relative;
  display: block;
  color: #fff;
  width: 100%;
  text-align: center;
  border-radius: 4px;
  line-height: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  overflow: hidden;
  text-decoration: none;
  margin-top: 10px;
  cursor: pointer;
}

#auth_infra_button_name::before {
  content: '認証基盤でログイン';
}

@media screen and (min-width: 480px) {
  .auth_infra_ec {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .auth_infra_ec .button-container {
    width: calc(33.3% - 10px);
    margin: 5px;
  }

  .auth_infra_ec .button-container .button {
    line-height: 40px;
    height: 40px;
  }
}

.auth_infra_ec .button-container .btn-auth_infra {
  background-color: #2780E3;
}

.auth_infra_sp_ec {
}

.auth_infra_sp_ec .button-container.w100 {
  width: 100%;
}

.auth_infra_sp_ec .button-container .button {
  position: relative;
  display: block;
  color: #fff;
  width: 100%;
  text-align: center;
  border-radius: 4px;
  line-height: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  overflow: hidden;
  text-decoration: none;
  margin-top: 10px;
}

@media screen and (min-width: 480px) {
  .auth_infra_sp_ec {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .auth_infra_sp_ec .button-container {
    width: calc(33.3% - 10px);
    margin: 5px;
  }

  .auth_infra_sp_ec .button-container .button {
    line-height: 40px;
    padding-left: 40px;
    height: 40px;
  }
}

.auth_infra_sp_ec .button-container .btn-auth_infra {
  background-color: #2780E3;
}


/*-------------------------------------*
 * PCデザイン可変部分
 *-------------------------------------*/
/* 【PC】フォームの項目名ラベル内必須アイコン */
span.form_required_ec{
  /* セクションラベルの色 */
  background: #D77676;
  /* セクションラベルのフォント色*/
  color: #ffffff;
}
/* 【PC】フォームのセクションラベル */
.landing_form_label_ec {
  /* セクションラベルの色 */
  background: #000;
  /* セクションラベルのフォント色*/
  color: #ffffff;
  /* セクションラベルのフォントサイズ */
  font-size: 18px;
}
/* 【PC】フォーム入力ボックス内の基本デザイン */
table.landing_form_ec {
  border-top: 1px solid #d0dcec;
  border-right: 1px solid #d0dcec;
  background: #FFF;
  border-bottom: 1px solid #999;
}
/* 【PC】フォーム左側　項目名ラベル */
.landing_form_ec th {
  background-color: #f6f6f6;
  border-bottom: 1px solid #d0dcec;
  border-left: 1px solid #d0dcec;
  background-color: #f6f6f6;
}
/* 【PC】フォーム右側　入力ボックス */
.landing_form_ec td {
  border-bottom: 1px solid #d0dcec;
  border-left: 1px solid #d0dcec;
  background-color: #ffffff;
}

/* 【PC】購入ボタンのデザイン */
.submit_bottom_ec {
  border: 0px;
  width: 400px;
  height: 150px;
  background-size: 394px auto;
  background-repeat: no-repeat;
  cursor: pointer;
}

/*-------------------------------------*
 * スマートフォンデザイン可変部分
 *-------------------------------------*/
/* 【SP】フォームの項目名ラベル内必須アイコン */
span.form_required_sp_ec{
  /* セクションラベルの色 */
  background: #D77676;
  /* セクションラベルのフォント色*/
  color: #ffffff;
}

/* 【SP】フォームのセクションラベル */
.landing_form_label_sp_ec {
  /* セクションラベルの色 */
  background: #000;
  /* セクションラベルのフォント色*/
  color: #ffffff;
  /* セクションラベルのフォントサイズ */
  font-size: 18px;
}

/* 【SP】フォームの項目名ラベル */
.form_box_label_sp_ec {
  background: #F6F6F6;
  border-bottom: 1px solid #C3C3C3;
  border-top: 1px solid #C3C3C3;
}

/* 【SP】購入ボタンのデザイン */
.submit_bottom_sp_ec {
  border: 0px;
  width: 100%;
  height: 150px;
  background-size: 100% auto;
  background-repeat: no-repeat;
  cursor: pointer;
}


/* 横幅を120%にする修正コード */
.wrapper {
  max-width: 900px; /* 元の750pxから120%増加 */
  margin: 0 auto;
  padding: 0 50px; /* 必要に応じて調整 */
}

@media screen and (max-width: 768px) {
  .wrapper {
    max-width: 100%; /* モバイルデバイスで幅を全画面に対応させる */
    padding: 0 20px; /* モバイル用のパディング */
  }
}

@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');
*,*::before,*::after{box-sizing:border-box}ul,ol{padding:0;margin:0;list-style:none}body,h1,h2,h3,h4,p,li,figure,figcaption,blockquote,dl,dd{margin:0}a:not([class]){text-decoration-skip-ink:auto}img,svg,video{width: 100%;display:block;width: 100%;vertical-align:bottom}input,button,textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:0;font:inherit;outline:none}table{border-collapse:collapse;border-spacing:0}hr{margin:0;padding:0}a{outline:none;text-decoration:none}a img{border:none}.clearfix::after{content:"";display:block;clear:both}
.u-text--head {
  color: #1e3538 !important;
  font-size: 24px !important;
}
.u-color--head {
  color: #1e3538 !important;
}
.u-text--subhead {
  color: #1e3538 !important;
  font-size: 17px !important;
}
.u-text--body {
  color: #1e3538 !important;
  font-size: 13px !important;
}
.u-color--body {
  color: #1e3538 !important;
}
.u-text--strong {
  color: #1e3538 !important;
  font-size: 13px !important;
}
.u-text--link {
  color: #ffffff !important;
  font-size: 13px !important;
}
.u-text--head--overlay {
  color: #FFFFFF !important;
  font-size: 24px !important;
}
.u-text--subhead--overlay {
  color: #FFFFFF !important;
  font-size: 17px !important;
}
.u-text--body--overlay {
  color: #FFFFFF !important;
  font-size: 13px !important;
}
.u-text--color--overlay {
  color: #FFFFFF !important;
}
.u-color__btn--bg {
  background: #ffffff !important;
}
.u-color__btn--bg--overlay {
  background: #ffffff !important;
}
.u-color__btn--bg--reverse {
  background: #1e3538 !important;
}
.u-color__btn--bg--overlay--reverse {
  background: #1e3538 !important;
}
.u-color__btn {
  color: #ffffff !important;
}
.u-text--btn {
  color: #1e3538 !important;
  border: solid 1px #1e3538 !important;
  font-size: 13px !important;
}
.u-text--btn--overlay {
  color: #1e3538 !important;
  font-size: 13px !important;
}
.u-text--btn--reverse {
  color: #ffffff !important;
  font-size: 13px !important;
  border: 1px solid #BDC1C2 !important;
}
.u-text--btn--overlay--reverse {
  color: #ffffff !important;
  font-size: 13px !important;
  border: 1px solid #BDC1C2 !important;
}
.u-color__btn--text {
  color: #1e3538 !important;
}
.u-color__btn--text--bg {
  background: #1e3538 !important;
}
.u-text--input {
  color: #1e3538 !important;
  font-size: 13px !important;
}
.u-color--input {
  color: #1e3538 !important;
}
.u-color__input--bg {
  background: #FFFFFF !important;
}
.u-color__border--input {
  border-color: #BDC1C2 !important;
}
.u-color__bg--base {
  background: #FFFFFF !important;
}
.u-color__bg--main {
  background: #FFFFFF !important;
}
.u-color__border--border {
  border-color: #1e3538 !important;
}
.u-color__border--main {
  border-color: #1e3538 !important;
}
.u-font--head {
  font-size: 24px !important;
}
.u-font--subhead {
  font-size: 17px !important;
}
.u-font--body {
  font-size: 13px !important;
}
.u-font--bold {
  font-weight: bold;
}

/* LP本体のCSS */
:root {
	--color_black: #000000;
	--color_gray: #727272;
	--color_pink: #EF7BC6;
	--color_white: #ffffff;
}
.l-container {
	width: 100%;
	max-width: 750px;
	height: auto;
	margin: 0 auto;
	font-family: "Shippori Mincho", serif;
	font-style: normal;
}
.garamond {
	font-family: "EB Garamond", serif;
}
.sec__heading {
	font-size: 24px;
	font-weight: 800;
	line-height: 1.9;
	letter-spacing: 0em;
	color: var(--color_black);
}
.sec__txt {
	font-size: 14px;
	font-weight: 500;
	line-height: 2.4;
	letter-spacing: 0em;
	color: var(--color_gray);
}

#fv {
	width: 100%;
	height: auto;
	background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/mutia/top_v2.png');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
	z-index: 1;
	opacity: 0;
	transition: opacity 1s;
}

#fv.loaded {
	background-position: 50% 0%;
	opacity: 1;
}

#fv::after {
	content: '';
	display: block;
	height: 45.07%;
	background: rgb(255,255,255);
	background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	position: absolute;
	bottom: 0;
	left: 0;
}

.fv__inner {
	width: 100%;
	height: 700px;
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.fv__contents {
	width: 25.19%;
	height: auto;
	position: relative;
	margin: 0; /* 追加 */
	padding: 0; /* 追加 */
}

.fv__logo {
	width: 97%;
	height: auto;
	margin: 0 auto 10.9415vw;
	opacity: 0;
	filter: blur(10px);
	transition: 1s;
	transition-delay: .6s;
}

.loaded .fv__logo {
	filter: blur(0px);
	opacity: 1;
}

.fv__subtitle {
	width: 100%;
	height: auto;
	margin: 0; /* 追加 */
	padding: 0; /* 追加 */
	opacity: 0;
	filter: blur(10px);
	transition: 1s;
	transition-delay: .9s;
}

.loaded .fv__subtitle {
	filter: blur(0px);
	opacity: 1;
}

#about {
	width: 100%;
	height: auto;
	padding: 0 0 0px;
	margin: -35px auto 0;
	position: relative;
	z-index: 2;
}
	.about__inner {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}
		.about__heading {
			width: 100%;
			height: auto;
			margin: 0 auto 43px;
		}
		.about__txt {
			width: 100%;
			height: auto;
		}
		.about__links {
			width: 100%;
			height: auto;
			margin: 60px auto 0;
		}
			.about__links__wrap {
				width: 100%;
				height: auto;
			}
			.about__links__wrap:not(:last-of-type) {
				border-bottom: solid 1px #C3C3C3;
			}
				.about__links__btn {
					display: block;
					width: 100%;
					height: auto;
					padding: 24px 0;
				}
					.about__links__btn__txt {
						display: block;
						width: 100%;
						height: auto;
						margin: 0 auto 9px;
						font-size: 18px;
						font-weight: 600;
						line-height: 1.444;
						letter-spacing: 0em;
						text-align: center;
						color: var(--color_pink);
					}
					.about__links__btn__arrow {
						display: block;
						width: 30px;
						height: auto;
						margin: 0 auto;
					}
					.about__image {
					  width: 100%;
 					 height: auto;
 					 display: block;
					}

#venue {
	width: 100%;
	height: auto;
}
	.venue__inner {
		width: 100%;
		height: auto;
	}
		.venue__links__wrap {
			width: 100%;
			height: auto;
			padding: 90px 0 85px;
			background-color: #C3C3C3;
		}
			.venue__links {
				width: 87.2773%;
				height: auto;
				margin: 0 auto;
			}
				.venue__links__item {
					width: 100%;
					height: auto;
				}
				.venue__links__item:not(:last-of-type) {
					margin-bottom: 40px;
				}
					.venue__anker_btn {
						display: block;
						width: 100%;
						height: auto;
						padding: 20px 0 10px;
						border-radius: 20px;
						overflow: hidden;
						background-position: center;
						background-repeat: no-repeat;
						background-size: cover;
					}
					.venue__anker_btn.sep {
						background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/mutia/926_1v2.png');
					}
					.venue__anker_btn.oct {
						background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/mutia/103_1v1.png');
					}
					.venue__anker_btn.ogasawara {
						background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/ogasawara1_v4.png');
					}
					.venue__anker_btn.kawase {
						background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/kawase1_v5.png');
					}
					.venue__anker_btn.kamisato {
						background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/kamisato1_v3.png');
					}

						.venue__anker_btn__date {
							display: block;
							width: 100%;
							height: auto;
							margin: 0 auto 10px;
							font-size: 15px;
							font-weight: 400;
							line-height: 1.2;
							letter-spacing: 0em;
							text-align: center;
							color: #323232;
						}
						.venue__anker_btn__name_en {
							display: block;
							width: 100%;
							height: auto;
							margin: 0 auto 8px;
							font-size: 20px;
							font-weight: 400;
							line-height: 1.25;
							letter-spacing: 0.21em;
							text-align: center;
							color: #323232;
						}
						.venue__anker_btn__name_ja {
							display: block;
							width: 100%;
							height: auto;
							margin: 0 auto 7px;
							font-size: 10px;
							font-weight: 500;
							line-height: 1.4;
							letter-spacing: 0.2em;
							text-align: center;
							color: #323232;
						}
						.venue__anker_btn__arrow {
							display: block;
							width: 17px;
							height: auto;
							margin: 0 auto;
						}
		.venue__list {
			width: 100%;
			height: auto;
		}
			.venue__item {
				width: 100%;
				height: auto;
			}
				.venue__details {
					width: 100%;
					height: auto;
					padding: 115px 0 45px;
					background-color: var(--color_white);
				}
					.venue__details__top {
						display: flex;
						justify-content: space-between;
						align-items: stretch;
						width: 100%;
						height: auto;
						margin: 0 auto 47px;
					}
						.venue__details__heading {
							width: 50%;
							height: auto;
							padding-left: 6.36135%;
						}
							.venue__details__name {
								display: flex;
								justify-content: flex-start;
								align-items: flex-start;
								width: 100%;
								height: auto;
							}
								.venue__details__name__en {
									margin-right: 16px;
									font-size: 14px;
									font-weight: 400;
									line-height: 1;
									letter-spacing: 0.2em;
									-webkit-writing-mode: vertical-rl;
									-moz-writing-mode: vertical-rl;
									-ms-writing-mode: tvb-rl;
									-ms-writing-mode: vertical-rl;
									writing-mode: vertical-rl;
									text-align: left;
									color: var(--color_black);
								}
								.venue__details__name__ja {
									margin-top: -15px;
									font-size: 40px;
									font-weight: 500;
									line-height: 1;
									letter-spacing: 0.2em;
									-webkit-writing-mode: vertical-rl;
									-moz-writing-mode: vertical-rl;
									-ms-writing-mode: tb-rl;
									-ms-writing-mode: vertical-rl;
									writing-mode: vertical-rl;
									text-align: left;
									color: var(--color_black);
								}
							.venue__details__target {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 75%;
								max-width: 128px;
								height: auto;
								margin: 45px auto 0 0;
								aspect-ratio: 1 / 1;
								border-radius: 50%;
								border: solid 1px var(--color_gray);
							}
								.venue__details__target p {
									width: 100%;
									height: auto;
									font-size: 16px;
									font-weight: 600;
									line-height: 1.5;
									letter-spacing: 0em;
									text-align: center;
									color: var(--color_black);
								}
						.venue__details__image {
							width: 50%;
							height: auto;
							background-position: center;
							background-repeat: no-repeat;
							background-size: cover;
							filter: blur(5px);
							opacity: 0;
							transition: 1s;
                            aspect-ratio: 3 / 4;   
							min-height: 360px;     /* 左カラムが低い時の潰れ防止 */
                            /* SP用に調整 */
							@media (max-width: 1023px){
 							 .venue__details__image {
 							   aspect-ratio: 4 / 3; /* 横長気味に */
							    min-height: 0;       /* モバイルでは高さ固定を解除 */
							  }
							}
                            
                            
						}
						.run.venue__details__image {
							filter: blur(0px);
							opacity: 1;
						}
						.ito .venue__details__image {
							background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/mutia/ito.png');
						}
						.tsutsumi .venue__details__image {
							background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/mutia/tsutsumi.png');
						}
						.ogasawara .venue__details__image {
							background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/kawase2_v2.png');
						}
						.kawase .venue__details__image {
							background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/ogasawara2_v1.png');
						}
						.kamisato .venue__details__image {
							background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/kamisato2_v2.png');
						}
						.tokyo .venue__details__image {
							background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/awa2024/v_2.png');
							background-position: 74% 50%;
						}
					.venue__details__txt {
						width: 87.2773%;
						height: auto;
						margin: 0 auto;
					}
				.venue__contents {
					width: 100%;
					height: auto;
					padding: 34px 0 52px;
					background-color: #F2F2F2;
				}
					.venue__info {
						width: 87.2773%;
						height: auto;
						margin: 0 auto;
					}
						.venue__info__item {
							display: flex;
							justify-content: space-between;
							align-items: flex-start;
							width: 100%;
							height: auto;
							padding: 24px 0;
							border-bottom: solid 1px #C3C3C3;
						}
							.venue__info__item__heading {
								width: 140px;
								height: auto;
								font-size: 14px;
								font-weight: 800;
								line-height: 2;
								letter-spacing: 0em;
								color: var(--color_black);
							}
							.venue__info__item__details {
								flex: 1;
								height: auto;
								font-size: 14px;
								font-weight: 600;
								line-height: 2;
								letter-spacing: 0em;
								color: var(--color_black);
							}
								.venue__info__item__details small {
									font-size: 10px;
								}
					.venue__ticket {
						width: 87.2773%;
						height: auto;
						padding: 55px 0 30px;
						margin: 0 auto;
					}
						.venue__ticket__heading {
							width: 100%;
							height: auto;
							margin: 0 auto 36px;
						}
							.venue__ticket__heading__en {
								width: 100%;
								height: auto;
								font-size: 24px;
								font-weight: 400;
								line-height: 1.5;
								letter-spacing: 0.21em;
								text-align: center;
								color: var(--color_black);
							}
							.venue__ticket__heading__ja {
								width: 100%;
								height: auto;
								font-size: 16px;
								font-weight: 900;
								line-height: 1;
								letter-spacing: 0em;
								text-align: center;
								color: var(--color_black);
							}
						.venue__ticket__price {
							width: 100%;
							height: auto;
							padding: 0 0 ;
							margin: 0 auto 37px;
						}
							.venue__ticket__price__txt {
								width: 100%;
								height: auto;
								font-size: 12px;
								font-weight: 600;
								line-height: 2;
								letter-spacing: 0em;
								text-align: center;
								color: var(--color_black);
							}
								.venue__ticket__price__txt small {
									font-size: 14px;
								}
							.venue__ticket__price__item {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								height: auto;
							}
							.venue__ticket__price__item:not(:last-of-type) {
								margin-bottom: 24px;
							}
								.venue__ticket__price__item__heading {
									width: 95px;
									height: auto;
									font-size: 16px;
									font-weight: 600;
									line-height: 1.825;
									letter-spacing: 0em;
									color: var(--color_black);
									position: relative;
								}
									.today .venue__ticket__price__item__heading::before {
										content: '※当日チケットは、入場制限あり';
										font-size: 10px;
										font-weight: 600;
										line-height: 1.5;
										letter-spacing: 0em;
										white-space: nowrap;
										position: absolute;
										bottom: 0;
										left: 0;
										transform: translate(0%,100%);
									}
								.venue__ticket__price__item__details {
									height: auto;
									font-size: 20px;
									font-weight: 600;
									line-height: 1.5;
									letter-spacing: 0em;
									color: var(--color_black);
								}
									.venue__ticket__price__item__details small {
										font-size: 14px;
									}
									.venue__info__item__details__label {
										display: flex;
										justify-content: center;
										align-items: center;
										width: 100%;
										height: 43px;
										margin: 22px auto;
										background-color: var(--color_gray);
										font-size: 14px;
										font-weight: 600;
										line-height: 1;
										letter-spacing: 0em;
										text-align: center;
										color: var(--color_white);
									}
						.venue__ticket__contents {
							width: 100%;
							height: auto;
							padding: 0 0 60px;
							margin: 0 auto 30px;
							border-bottom: solid 1px #C3C3C3;
						}
							.venue__ticket__contents__heading {
								width: 100%;
								height: auto;
								margin: 0 auto 9px;
								font-size: 16px;
								font-weight: 900;
								line-height: 1.5;
								letter-spacing: 0em;
								text-align: center;
								color: var(--color_black);
							}
							.venue__ticket__contents__details {
								width: 100%;
								height: auto;
								font-size: 14px;
								font-weight: 600;
								line-height: 1.4;
								letter-spacing: 0em;
								text-align: center;
								color: var(--color_black);
							}
						.venue__ticket__note {
							width: 100%;
							height: auto;
							font-size: 10px;
							font-weight: 600;
							line-height: 2;
							letter-spacing: 0em;
							color: var(--color_black);
						}
					.venue__cart {
						width: 87.2773%;
						height: auto;
						margin: 0 auto;
					}
						.venue__cart__select_wrap {
							width: 100%;
							height: auto;
							margin: 0 auto 30px;
							position: relative;
						}
							.venue__cart__select_wrap::after {
								content: '';
								display: block;
								width: 30px;
								height: 30px;
								background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/fukukiri_sakuranoutage2024/select_arrow.png');
								background-position: center;
								background-repeat: no-repeat;
								background-size: cover;
								position: absolute;
								top: 35px;
								right: 23px;
								transform: translate(0%,-50%);
								pointer-events: none;
							}
							.venue__cart__select {
								width: 100%;
								height: 70px;
								padding: 0 32px;
								border-radius: 5px;
								background-color: var(--color_white);
								font-size: 18px;
								font-weight: 500;
								line-height: 1.5;
								letter-spacing: 0em;
								color: var(--color_black);
							}
							#goods .venue__cart__select {
								border: solid 1px var(--color_gray);
							}
						.venue__cart__btn_wrap {
							width: 100%;
							height: auto;
						}
							.venue__cart__btn {
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								height: 70px;
								border-radius: 5px;
								background-color: var(--color_black);
								font-size: 16px;
								font-weight: 500;
								line-height: 1;
								letter-spacing: 0em;
								color: var(--color_white);
							}

#after_party {
	width: 100%;
	height: auto;
	padding: 100px 0 150px;
	background-color: #F7DCED;
}
	.after_party__inner {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}
		.after_party__heading {
			width: 100%;
			height: auto;
			margin: 0 auto;
			font-size: 28px;
			font-weight: 900;
			line-height: 1.3;
			letter-spacing: 0.21em;
			text-align: center;
			color: var(--color_black);
		}
		#after_party .venue__contents {
			background: none;
		}

#goods {
	width: 100%;
	height: auto;
}
	.goods__inner {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}
		.goods__contents {
			width: 100%;
			height: auto;
			padding: 40px 0 20px;
			margin: 0 auto;
			position: relative;
		}
			.goods__contents::after {
				content: '';
				display: block;
				width: auto;
				height: 106.85%;
				aspect-ratio: 236 / 390;
				background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/fukukiri_sakuranoutage2024/goods-contents_bg.png');
				background-position: center right;
				background-repeat: no-repeat;
				background-size: cover;
				position: absolute;
				top: 50%;
				right: 0;
				z-index: -1;
				transform: translate(0%,-50%);
				opacity: 0;
				filter: blur(5px);
				transition: 1.2s;
			}
			.run.goods__contents::after {
				filter: blur(0px);
				opacity: 1;
			}
			.goods__heading {
				width: 87.2773%;
				height: auto;
				margin: 0 auto 6px;
				position: relative;
				z-index: 2;
			}
			.goods__txt {
				width: 87.2773%;
				height: auto;
				margin: 0 auto;
				position: relative;
				z-index: 2;
			}
		.goods__list {
			width: 100%;
			height: auto;
		}
			.goods__list__item {
				width: 100%;
				height: auto;
			}
				.goods__image {
					width: 100%;
					height: auto;
					background-color: var(--color_white);
					filter: blur(5px);
					opacity: 0;
					transition: 1s;
				}
				.run.goods__image {
					filter: blur(0px);
					opacity: 1;
				}
				.goods__details {
					width: 100%;
					width: 100%;
					height: auto;
					padding: 48px 6.36135% 60px;
					margin: 0 auto;
					background-color: var(--color_white);
				}
					.goods__details__copy {
						width: 100%;
						height: auto;
						margin: 0 auto 8px;
						font-size: 14px;
						font-weight: 500;
						line-height: 1.4;
						letter-spacing: 0.1em;
						color: var(--color_black);
					}
					.goods__details__name {
						width: 100%;
						height: auto;
						margin: 0 auto 22px;
						font-size: 36px;
						font-weight: 500;
						line-height: 1.444;
						letter-spacing: 0.2em;
						color: var(--color_black);
					}
					.tee .goods__details__name {
						letter-spacing: 0.1em;
					}
						.goods__details__name small {
							font-size: 26px;
							letter-spacing: 0.1em;
							margin-left: 15px;
							position: relative;
							top: -3px;
						}
					.goods__details__price {
						width: 100%;
						height: auto;
						margin: 0 auto 58px;
						font-size: 18px;
						font-weight: 600;
						line-height: 1.444;
						letter-spacing: 0em;
						color: var(--color_black);
					}
						.goods__details__price small {
							font-size: 14px;
						}
					.goods__details__info {
						width: 100%;
						height: auto;
						margin: 0 auto 68px;
					}
						.goods__details__info__item {
							display: flex;
							justify-content: flex-start;
							align-items: flex-start;
							width: 100%;
							height: auto;
						}
						.goods__details__info__item:not(:last-of-type) {
							margin-bottom: 16px;
						}
							.goods__details__info__item dt {
								width: 130px;
								height: auto;
								font-size: 14px;
								font-weight: 500;
								line-height: 1.444;
								letter-spacing: 0em;
								color: var(--color_black);
							}
							.goods__details__info__item dd {
								flex: 1;
								height: auto;
								font-size: 14px;
								font-weight: 500;
								line-height: 1.444;
								letter-spacing: 0em;
								color: var(--color_gray);
							}
					.goods__details__btn_wrap {
						width: 100%;
						height: auto;
					}
						.goods__details__btn {
							display: flex;
							justify-content: center;
							align-items: center;
							width: 100%;
							height: 70px;
							border-radius: 5px;
							background-color: var(--color_black);
							font-size: 16px;
							font-weight: 500;
							line-height: 1;
							letter-spacing: 0em;
							color: var(--color_white);
						}
					.goods__details__note {
						width: 100%;
						height: auto;
						margin: 19px auto 0;
						font-size: 10px;
						font-weight: 500;
						line-height: 1.5;
						letter-spacing: 0em;
						text-align: center;
						color: var(--color_gray);
					}
					.goods__details__accordion {
						width: 100%;
						height: auto;
						margin: 35px auto 0;
						border-top: solid 1px #C3C3C3;
						border-bottom: solid 1px #C3C3C3;
					}
						.goods__details__accordion dt {
							display: flex;
							justify-content: flex-start;
							align-items: center;
							width: 100%;
							height: 64px;
							padding: 0 14px;
							font-size: 14px;
							font-weight: 500;
							line-height: 1;
							letter-spacing: 0em;
							color: var(--color_black);
							position: relative;
						}
							.goods__details__accordion dt::after {
								content: '';
								display: block;
								width: 26px;
								height: 26px;
								background-image: url('https://d2w53g1q050m78.cloudfront.net/nightmuseumbar/uploads/lpimges/fukukiri_sakuranoutage2024/accordion_arrow.png');
								background-position: center;
								background-repeat: no-repeat;
								background-size: cover;
								position: absolute;
								top: 32px;
								right: 9px;
								transform: translate(0%,-50%);
								transition: .4s;
								pointer-events: none;
							}
							.goods__details__accordion dt.active::after {
								transform: translate(0%,-50%) rotate(90deg);
							}
						.goods__details__accordion dd {
							display: none;
							width: 100%;
							height: auto;
							padding: 5px 14px 23px;
							font-size: 10px;
							font-weight: 500;
							line-height: 1.9;
							letter-spacing: 0em;
							color: var(--color_gray);
						}

/* PC ================================================== */
@media all and (min-width: 751px){
#fv {
	height: auto;
	aspect-ratio: 520 / 852;
}
}
/* LP本体のCSS ｺｺﾏﾃﾞ */


.l-footer {
	display: flex;
	justify-content: space-between;
	padding: 80px 100px 40px;
	border-top-width: 1px;
	border-top-style: solid;
}
@media screen and (max-width: 719px) {
	.l-footer {
	flex-direction: column;
	padding: 40px 30px 30px;
	}
}
.l-footer__info {
	flex: 1;
	max-width: 400px;
}
@media screen and (max-width: 719px) {
	.l-footer__info {
	order: 2;
	}
}
.l-footer__info__newsletter {
	margin-bottom: 60px;
}
.l-footer__info__newsletter__title {
	font-size: 16px;
	letter-spacing: 0.2em;
	margin-bottom: 10px;
}
@media screen and (max-width: 719px) {
	.l-footer__info__newsletter__title {
	font-size: 16px;
	}
}
.l-footer__info__newsletter__lead {
	font-size: 12px;
	margin-top: 10px;
	margin-bottom: 12px;
}
@media screen and (max-width: 719px) {
	.l-footer__info__newsletter__lead {
	font-size: 12px;
	}
}
@media screen and (max-width: 719px) {
	.l-footer__info__newsletter__lead br {
	display: none;
	}
}
.l-footer__info__store__logo {
	max-width: 180px;
	margin-bottom: 20px;
}
.l-footer__info__store__sns {
	margin-bottom: 20px;
}
.l-footer__info__store__sns__item {
	transition: 0.4s;
}
.l-footer__info__store__sns__item:hover {
	opacity: 0.4;
}
.l-footer__info__store__sns__item:not(:last-child) {
	margin-right: 20px;
}
.l-footer__info__store__sns__item i {
	font-size: 24px;
}
.l-footer__info__store__copyright {
	font-size: 12px;
}
@media screen and (max-width: 719px) {
	.l-footer__info__store__copyright {
	font-size: 12px;
	}
}
.l-footer__menu {
	display: flex;
}
@media screen and (max-width: 719px) {
	.l-footer__menu {
	display: block;
	}
}

.l-footer__info__store__sns__item img {
	display: inline-block;
	width: auto;
	height: 18px;
}
.l-footer {
	padding: 80px 113px 40px;
}
@media screen and (max-width: 1023px) {
	.l-footer {
		padding: 40px 30px 30px;
	}
}
.l-footer .l-footer__inner {
	max-width: 1137px;
	width: 100%;
	padding: 0 0;
	display: flex;
	margin: auto;
	justify-content: space-between;
	flex-wrap: wrap;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner {
		max-width: 310px;
	}
}
.l-footer .l-footer__inner .l-footer__info {
	position: relative;
	min-height: 300px;
	order: 1;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info {
		min-height: 120px;
		order: 2;
	}
}
.l-footer .l-footer__inner .l-footer__info .footer_{
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: 10px !important;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .footer_{
		transform: translateX(-50%);
		left: 50%;
		bottom: -12px;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__logo {
		text-align: center;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns {
		text-align: center;
		max-width: 180px;
		margin: auto;
		display: flex;
		justify-content: space-between;
		margin: 79px auto;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns .l-footer__info__store__sns__item:not(:last-child) {
		margin-right: 0;
	}
}
.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns .l-footer__info__store__sns__item img {
	width: auto;
	height: 22px;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns .l-footer__info__store__sns__item img {
		height: 33px;
		margin-right: 0;
	}
}
.l-footer .l-footer__inner .l-footer__menu {
	min-width: 145px;
	display: flex;
	order: 2;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu {
		order: 1;
	}
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__title {
	min-height: 26px;
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list {
	display: flex;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list {
		display: block;
	}
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__1,
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__2 {
	min-width: 160px;
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__2 {
	margin-left: 60px;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__2 {
		margin-left: 0;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu {
		min-width: inherit;
		flex-wrap: wrap;
		justify-content: center;
		max-width: 310px;
		width: 100%;
		margin: auto;
	}
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu {
		width: 50%;
		padding: 0;
		margin-left: 0;
		margin-bottom: 0;
	}
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu .c-footer_menu__title {
		font-size: 14px !important;
		min-height: inherit;
	}
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu .c-footer_menu__list__item__inner {
		font-size: 12px !important;
	}
}
.l-footer .l-footer__inner .l-footer__menu .l-footer__menu__store__logo {
	width: 100%;
	margin: 1rem auto 4rem;
}
.l-footer .l-footer__inner .l-footer__menu .l-footer__menu__store__logo img {
	max-width: 180px;
	margin: auto;
}
.l-footer .l-footer__inner .l-footer_scroll_top {
	position: fixed;
	bottom: 50px;
	right: 65px;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer_scroll_top {
		bottom: 25px;
		right: 25px;
	}
}
.l-footer .l-footer__inner .l-footer_scroll_top .l-footer_scroll_top__icon img {
	width: 27px;
}
.c-footer_menu__list__item:not(:last-child) {
	margin-bottom: 14px;
}
@media screen and (max-width: 1023px) {
	.c-footer_menu__list__item:not(:last-child) {
		margin-bottom: 0;
	}
}

.l-footer {
	margin-top: 8rem;
}

.l-footer__info__store__sns__item img {
	display: inline-block;
	width: auto;
	height: 18px;
}
.l-footer {
	padding: 80px 113px 40px;
}
@media screen and (max-width: 1023px) {
	.l-footer {
		padding: 40px 30px 30px;
	}
}
.l-footer .l-footer__inner {
	max-width: 1137px;
	width: 100%;
	padding: 0 0;
	display: flex;
	margin: auto;
	justify-content: space-between;
	flex-wrap: wrap;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner {
		max-width: 310px;
	}
}
.l-footer .l-footer__inner .l-footer__info {
	position: relative;
	min-height: 300px;
	order: 1;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info {
		min-height: 120px;
		order: 2;
	}
}
.l-footer .l-footer__inner .l-footer__info .footer_body {
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: 10px !important;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .footer_body {
		transform: translateX(-50%);
		left: 50%;
		bottom: -12px;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__logo {
		text-align: center;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns {
		text-align: center;
		max-width: 180px;
		margin: auto;
		display: flex;
		justify-content: space-between;
		margin: 79px auto;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns .l-footer__info__store__sns__item:not(:last-child) {
		margin-right: 0;
	}
}
.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns .l-footer__info__store__sns__item img {
	width: auto;
	height: 22px;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__info .l-footer__info__store .l-footer__info__store__sns .l-footer__info__store__sns__item img {
		height: 33px;
		margin-right: 0;
	}
}
.l-footer .l-footer__inner .l-footer__menu {
	min-width: 145px;
	display: flex;
	order: 2;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu {
		order: 1;
	}
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__title {
	min-height: 26px;
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list {
	display: flex;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list {
		display: block;
	}
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__1, .l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__2 {
	min-width: 160px;
}
.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__2 {
	margin-left: 60px;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu__list .c-footer_menu__list__2 {
		margin-left: 0;
	}
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer__menu {
		min-width: inherit;
		flex-wrap: wrap;
		justify-content: center;
		max-width: 310px;
		width: 100%;
		margin: auto;
	}
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu {
		width: 50%;
		padding: 0;
		margin-left: 0;
		margin-bottom: 0;
	}
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu .c-footer_menu__title {
		font-size: 14px !important;
		min-height: inherit;
	}
	.l-footer .l-footer__inner .l-footer__menu .c-footer_menu .c-footer_menu__list__item__inner {
		font-size: 12px !important;
	}
}
.l-footer .l-footer__inner .l-footer__menu .l-footer__menu__store__logo {
	width: 100%;
	margin: 1rem auto 4rem;
}
.l-footer .l-footer__inner .l-footer__menu .l-footer__menu__store__logo img {
	max-width: 180px;
	margin: auto;
}
.l-footer .l-footer__inner .l-footer_scroll_top {
	position: fixed;
	bottom: 50px;
	right: 65px;
}
@media screen and (max-width: 1023px) {
	.l-footer .l-footer__inner .l-footer_scroll_top {
		bottom: 25px;
		right: 25px;
	}
}
.l-footer .l-footer__inner .l-footer_scroll_top .l-footer_scroll_top__icon img {
	width: 27px;
}
.c-footer_menu__list__item:not(:last-child) {
	margin-bottom: 14px;
}
@media screen and (max-width: 1023px) {
	.c-footer_menu__list__item:not(:last-child) {
		margin-bottom: 0;
	}
}

@media screen and (min-width: 1024px) {
	.view_sp {
		display: none !important;
	}
}
@media screen and (max-width: 1023px) {
	.view_pc {
		display: none !important;
	}
}

/* アニメーション */
.fadeIn {
	opacity: 0;
	transition: 1.2s;
	-webkit-transition: 1.2s;
}
.fadeIn.run {
	opacity: 1;
}
.run .fadeIn {
	opacity: 1;
}
.fadeIn_up {
	opacity: 0;
	transform: translate(0, 20px);
	-webkit-transform: translate(0, 20px);
	transition: 1.2s;
	-webkit-transition: 1.2s;
}
.fadeIn_up.run {
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	opacity: 1;
}
.run .fadeIn_up {
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	opacity: 1;
}
.delay_01 { transition-delay: .1.2s; }
.delay_02 { transition-delay: .2s; }
.delay_03 { transition-delay: .3s; }
.delay_04 { transition-delay: .4s; }
.delay_05 { transition-delay: .5s; }

input[type="checkbox"] {
  appearance: checkbox;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="search"],
textarea {
  border: 1px solid #BDC1C2 !important;
  padding: 10px !important;
  background-color: #fff !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
}


input,
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 8px;
  box-sizing: border-box;
}

select {
  appearance: menulist !important; /* デフォルト矢印を戻す */
  -webkit-appearance: menulist !important;
  -moz-appearance: menulist !important;
}

/* about画像をフル幅に＆前後の余白を消す */
#fv { margin-bottom: 0 !important; }

#about{
  padding: 0 !important;
  margin: 0 auto !important;
}

#about .about__inner{
  width: 100% !important;      /* 87.2773% を上書きして小さくならないように */
  margin: 0 auto !important;
}

.about__image{
  display: block;
  width: 100%;
  height: auto;
  margin: 0;                   /* 画像まわりの余白除去 */
}

/* もしテキストを残していないなら念のため非表示（入れていなければ不要） */
#about .about__heading,
#about .about__txt{
  display: none !important;
}

/* about内のリンクブロックが空なら余白を出さない */
#about .about__links{ margin-top: 0 !important; 