@charset "utf-8";

#landing_wrapper {
  width: 750px;
  background-color: #FFF;
  margin: 0 auto;
  padding: 0;
}

@media screen and (max-width: 750px) {
  #landing_wrapper {
    width: 100%;
  }



#landing_wrapper img {
  width: 100%;
}

body {
  background-color: #CCC;
}

#wrapper {
  margin: 10px;
  font-size: 18px;
}

.block_form {
  margin: 0 2% 2%;
  font-size: 18px;
}

.block_form p {
  margin: 0;
  font-size: 18px;
}
}
/*---------------------------------------
アップセル画面のボタン横並び
---------------------------------------*/
.byn_area {
  width: 100%;
  margin-bottom: 0px;
  display: table;
}

.byn_moni {
  width: 45%;
  display: table-cell;
  vertical-align: bottom;
}

.byn_upsell {
  width: 54%;
  display: table-cell;
  vertical-align: bottom;
}

/************************************************

Header

*************************************************/
#header {
  width: 100%;
  margin-bottom: 30px;
}

#header #logo {
  text-align: center;
  margin: 10px 0;
}

.anno {
  font-size: 10px;
  padding: 10px 0 10px 1em;
}

.anno_r {
  font-size: 10px;
  padding: 10px 1em 0 0;
  text-align: right;
}

.notes {
  font-size: 10px;
  margin-top: 15px;
  padding: 0 10px;
}

/************************************************

section

*************************************************/
section {
  margin-top: 20px;
}

section p {
  margin-bottom: 18px;
}

section ul {
  margin-bottom: 8px;
}

section .chain {
  margin: 0px 0px 40px 0px;
  padding: 0px;
  vertical-align: bottom;
}

section .chain_mb20 {
  margin: 0px 0px 20px 0px;
}

section .chain p,
section .chain_mb20 p {
  margin: 0px;
}

/************************************************

Footer

*************************************************/
#footer {
  padding: 10px 0 0;
  margin-top: 20px;
  background: #e3f6ff;
  text-align: center;
}

#footer nav {
  margin-bottom: 15px;
  font-size: 14px;
  text-align: center;
  line-height: 180%;
}

#footer nav ul li {
  list-style-type: none;
}

#footer nav ul li a {
  text-decoration: underline;
  color: #881717;
}

#footer img {
  height: 30px;
  padding-bottom: 50px;
  width: auto;
}

#copy {
  clear: both;
  background: #002ba2;
  padding: 8px 0 12px;
}

#copy p {
  text-align: center;
  font-size: 12px;
  margin-top: 2px;
  color: #ffffff;
}

/************************************************

Box

*************************************************/
.box_a {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  background: #fffacd;
  padding: 10px;
}

.box_b {
  margin: 0 10px 20px;
}

.box_b dl dt {
  font-weight: bold;
  font-size: 110%;
  margin-bottom: 5px;
  padding-bottom: 2px;
  border-bottom: 1px dotted #CCC;
}

.box_c {
  margin: 0 10px;
}

.clm2_box .left_box {
  width: 49%;
  float: left;
}

.clm2_box .right_box {
  width: 49%;
  float: right;
}

/************************************************

unit

*************************************************/
.unit_a {
  padding: 10px 15px 10px 15px;
}

.unit_s16 {
  padding: 10px 15px 10px 15px;
}

.unit_a2 {
  border: 3px solid #87cefa;
  padding: 10px 10px 0px 10px;
}

.unit_a3 {
  border: 3px solid #ff8bac;
  padding: 10px 10px 0px 10px;
}

.unit_b {
  padding: 0px 10px 10px 10px;
  margin: 0px;
  border-top: none;
  line-height: 160%;
}

.unit_c {
  background: #FFF;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: 5px solid #F5E07A;
  padding: 10px;
}

.unit_d {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: 5px solid #F36;
  padding: 10px;
}

.unit_e {
  background: #FCC;
  box-shadow: 2px 2px 5px #666;
  -moz-box-shadow: 2px 2px 5px #666;
  -webkit-box-shadow: 2px 2px 5px #666;
}

.unit_f {
  width: 98%;
  background-color: #FFFEF6;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: 5px solid #F5E07A;
  padding: 10px;
  margin: 0px auto 18px auto;
  box-sizing: border-box;
}

.unit_f_ver2 {
  width: 98%;
  background-color: #FFF;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: 5px solid #f00;
  padding: 10px;
  margin: 0px auto 18px auto;
  box-sizing: border-box;
}

.unit_g {
  border-top: none;
  border-right: 3px solid #b56b0a;
  border-bottom: 3px solid #b56b0a;
  border-left: 3px solid #b56b0a;
  padding: 20px 10px 0px 10px;
  margin: -10px 0px 0px 0px;
}

.unit_info {
  border-top: none;
  border-right: 3px solid #e2cd82;
  border-bottom: 3px solid #e2cd82;
  border-left: 3px solid #e2cd82;
  padding: 20px 10px 0px 10px;
  margin: -28px 0px 0px 0px;
}

/************************************************

Title

*************************************************/
.ttl01,
.form_title,
#landing_form .form_title {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border: 3px solid #FFF;
  box-shadow: 1px 1px 3px #666;
  -moz-box-shadow: 1px 1px 3px #666;
  -webkit-box-shadow: 1px 1px 3px #666;
  color: #FFF;
  font-weight: bold;
  text-shadow: 1px 1px 1px #023368;
  padding: 10px 10px;
  margin-bottom: 10px;
  background-image: -moz-linear-gradient( -90deg, rgb(181,20,35) 0%, rgb(91,5,9) 99%);
  background-image: -webkit-linear-gradient( -90deg, rgb(181,20,35) 0%, rgb(91,5,9) 99%);
  background-image: -ms-linear-gradient( -90deg, rgb(181,20,35) 0%, rgb(91,5,9) 99%);
  background-image: linear-gradient( to bottom, rgb(181,20,35), rgb(91,5,9) 99%);
}

/************************************************

Btn

*************************************************/
.btn_topc00 {
  background: -moz-linear-gradient(top, #ffffff, #efefef);
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#efefef));
  background: linear-gradient(to bottom, #ffffff, #efefef);
  border-top: 1px solid #cccccc;
  width: 100%;
  -moz-box-shadow: 1px 1px 2px #999;
  -webkit-box-shadow: 1px 1px 2px #999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/************************************************

border

*************************************************/
.border_box01 {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  padding: 50px 0;
  margin: 10px 0;
}

/************************************************

Table

*************************************************/
.table_a {
  width: 100%;
}

.table_a td {
  vertical-align: middle;
  text-align: center;
}

#order_info {
  margin: 4% 0 0 0;
}

.order_info_table {
  margin-bottom: 5px;
}

.table_b, .order_info_table {
  border-left: 1px solid #999;
  border-top: 1px solid #999;
  width: 100%;
  font-size: 15px;
}

.table_b th, .order_info_table th {
  background: #FFE3E3;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 8px;
  vertical-align: middle;
  text-align: center;
  color: #333;
  width: 30%;
}

.table_b td, .order_info_table td {
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 8px;
  vertical-align: middle;
}

.table_c {
  border-left: 1px solid #999;
  border-top: 1px solid #999;
  width: 100%;
}

.table_c th {
  background: #e0ecfa;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 8px;
  vertical-align: middle;
  text-align: left;
  color: #333;
  width: 30%;
}

.table_c td {
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 8px;
  vertical-align: middle;
}

.table_d {
  width: 100%;
}

.table_d th {
  vertical-align: top;
  width: 30px;
}

.table_d td {
  vertical-align: top;
  padding: 8px 0px 0px 0px;
  font-size: 92%;
}

/************************************************

  注意喚起！

*************************************************/

.caution_img {
  text-align: center;
  margin: 10px;
}

#landing_wrapper .caution_img img {
  width: 20%;
}

/************************************************

  icon

*************************************************/
.must {
  color: #FFF;
  background: #F00;
  font-weight: bold;
  padding: 3px;
  font-size: 12px;
  margin-left: 10px;
  vertical-align: middle;
  white-space: nowrap;
}

/************************************************

  select,input

*************************************************/
select,
input {
  padding: 10px 5px;
  font-size: 100%;
}

input[type="checkbox"],
input[type="radio"] {
  -webkit-transform: scale(1.8);
  transform: scale(1.8);
  height: 28px;
  vertical-align: middle;
}

/************************************************

  本気チェック

*************************************************/

.form-section01 {
  border: 3px solid #ffc600;
  border-radius: 10px 10px 10px 10px;
  padding: 10px;
  background-color: #fffcd3;
  margin-bottom: 10px;
  font-size: 18px;
}

.form-section01 h3 {
  color: #ff0000;
  text-align: center;
  font-weight: bold;
  font-size: 24px;
  margin: 0 auto 18px 0;
}

.form-section01 ul {
  border-bottom: 1px #ffc600 dashed;
}

.form-section01 li {
  margin-bottom: 10px;
}

.form-section01 li table {
  width: 100%;
  margin: 0 auto;

}

.form-section01 li th {
  width: 10%;
  vertical-align: top;
}

.form-section01 li td {
  vertical-align: top;
}

.form-section01 li input {
  vertical-align: top;
}

.form-section01 li label,
.form-section01 li strong,
.form-section01 li span {
  vertical-align: middle;
}

.form_notice {
  font-size: 13px;
  color: #666;
  vertical-align: middle;
}

@media screen and (max-width: 750px) {
  .form-section01 {
    font-size: 5vw;
  }

  .form-section01 h3 {
    font-size: 6.5vw;
  }
}

/************************************************

  アップセルアンケート

*************************************************/
.byn_area .demand_answer {
  background-color: #ffffcb;
  padding: 10px 12px;
  font-size: 12px;
  margin: 0 1px 6px 7px;
  border: solid 1px #999999;
  border-radius: 10px;
  line-height: 1.3;
}

.byn_area .demand_answer p {
  font-weight: bold;
  margin: 0;
}

.byn_area .demand_answer p.small {
  font-size: 0.6em;
  line-height: 1;
}

.box_d {
  margin: 4% 2% 30px 2%;
  background: none repeat scroll 0 0 #ffffcb;
  padding: 10px;
  text-align: left;
}

.form-section01 .box_d {
  margin: 0 0 0 0;
  background: none repeat scroll 0 0 #ffffcb;
  padding: 10px;
  text-align: left;
}

.box_d p {
  margin: 0;
  padding: 0 0 10px;
  text-align: left;
  font-size: 15px;
}

.form-section01 .box_d p {
  font-size: 18px;
}

.box_d p.check_text {
  text-align: center;
}

.box_d .enq_ttl {
  font-weight: bold;
}

.box_d .enq_anno {
  font-size: 12px;
  padding: 0 0 5px;
}

.box_d #enq_textarea {
  width: 98%;
  margin: 0 auto;
  border-radius: 8px;
  padding: 5px;
  box-sizing: border-box;
  line-height: 1.5;
  resize: vertical;
}

.box_d p.check_text #enq_textarea {
  width: 100%;
}

@media screen and (max-width: 750px) {
  table.byn_area {
    margin-bottom: 8%;
  }
  .byn_area .demand_answer {
    padding: 4% 4.2%;
    font-size: 2.7vw;
    margin: 0 0% 4% 4%;
  }

  .box_d {
    margin: 4% 2% 10% 2%;
    padding: 4%;
  }

  .form-section01 .box_d {
    margin: 0 0 0 0;
  }

  .box_d p {
    padding: 0 0 2%;
    font-size: 4vw;
  }

  .form-section01 .box_d p {
    font-size: 5vw;
  }

  .box_d .enq_ttl {
    font-weight: bold;
  }



  .box_d .enq_anno {
    font-size: 3vw;
    padding: 0 0 2%;
  }

  .box_d #enq_textarea {
    padding: 2%;
  }
}

/************************************************

border

*************************************************/
.border_b01 {
  border-bottom: 2px solid #ede4c4;
  background: #fff4cb;
  padding: 5px 0px;
}

.border_b02 {
  border-bottom: 3px double #F00;
}

.border_b03 {
  border-bottom: 1px solid #FF0000;
  padding-bottom: 2px;
}

.border_b04 {
  border-bottom: 1px dashed #000000;
  padding-bottom: 30px;
}

/************************************************
  Margin Padding
*************************************************/
/*--------------------
  Margin
--------------------*/
.m0 {
  margin: 0px;
}

.m10 {
  margin: 10px;
}

/*--------------------
  Margin-Top
--------------------*/
.mt-10 {
  margin-top: -10px;
}

.mt0 {
  margin-top: 0px;
}

.mt5 {
  margin-top: 5px;
}

.mt7 {
  margin-top: 7px;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mt50 {
  margin-top: 50px;
}

/*--------------------
  Margin-Right
--------------------*/
.mr0 {
  margin-right: 0px;
}

.mr5 {
  margin-right: 5px;
}

.mr7 {
  margin-right: 7px;
}

.mr10 {
  margin-right: 10px;
}

.mr20 {
  margin-right: 20px;
}

.mr30 {
  margin-right: 30px;
}

.mr40 {
  margin-right: 40px;
}

.mr50 {
  margin-right: 50px;
}

/*--------------------
  Margin-Bottom
--------------------*/
.mb0 {
  margin-bottom: 0px;
}

.mb5 {
  margin-bottom: 5px;
}

.mb7 {
  margin-bottom: 7px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

/*--------------------
  Margin-Left
--------------------*/
.ml0 {
  margin-left: 0px;
}

.ml5 {
  margin-left: 5px;
}

.ml7 {
  margin-left: 7px;
}

.ml10 {
  margin-left: 10px;
}

.ml20 {
  margin-left: 20px;
}

.ml30 {
  margin-left: 30px;
}

.ml40 {
  margin-left: 40px;
}

.ml50 {
  margin-left: 50px;
}

/*--------------------
  Padding-Top
--------------------*/
.pt0 {
  padding-top: 0px;
}

.pt5 {
  padding-top: 5px;
}

.pt7 {
  padding-top: 7px;
}

.pt10 {
  padding-top: 10px;
}

.pt20 {
  padding-top: 20px;
}

.pt30 {
  padding-top: 30px;
}

.pt40 {
  padding-top: 40px;
}

.pt50 {
  padding-top: 50px;
}

/*--------------------
  Padding-Right
--------------------*/
.pr0 {
  padding-right: 0px;
}

.pr5 {
  padding-right: 5px;
}

.pr7 {
  padding-right: 7px;
}

.pr10 {
  padding-right: 10px;
}

.pr20 {
  padding-right: 20px;
}

.pr30 {
  padding-right: 30px;
}

.pr40 {
  padding-right: 40px;
}

.pr50 {
  padding-right: 50px;
}

/*--------------------
  Padding-Bottom
--------------------*/
.pb0 {
  padding-bottom: 0px;
}

.pb5 {
  padding-bottom: 5px;
}

.pb7 {
  padding-bottom: 7px;
}

.pb10 {
  padding-bottom: 10px;
}

.pb20 {
  padding-bottom: 20px;
}

.pb30 {
  padding-bottom: 30px;
}

.pb40 {
  padding-bottom: 40px;
}

.pb50 {
  padding-bottom: 50px;
}

/*--------------------
  Padding-Left
--------------------*/
.pl0 {
  padding-left: 0px;
}

.pl5 {
  padding-left: 5px;
}

.pl7 {
  padding-left: 7px;
}

.pl10 {
  padding-left: 10px;
}

.pl20 {
  padding-left: 20px;
}

.pl30 {
  padding-left: 30px;
}

.pl40 {
  padding-left: 40px;
}

.pl50 {
  padding-left: 50px;
}

/************************************************
  Float Align
*************************************************/
/*--------------------
  Float
--------------------*/
.f_left {
  float: left;
}

.f_right {
  float: right;
}

/*--------------------
  Align
--------------------*/
.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}

/************************************************

form

*************************************************/
#landing_form {
  background-color: #FFF;
  border-bottom: 1px solid #999;
}

#form_checkout_title {
  display: none;
}

.form_box {
  border-right: 1px solid #999999;
  border-left: 1px solid #999999;
}

span.form_required,
span.form_notice {
  color: #FFF;
  background-color: #F00;
  font-weight: bold;
  padding: 3px;
  font-size: 12px;
  margin-left: 10px;
  vertical-align: middle;
}

.form_input_box {
  padding: 8px;
}

.form_example {
  padding: 0 8px 8px;
  color: #666666;
  font-size: 13px;
}

.form_input_box input[type="text"],
.form_input_box input[type="email"] {
  width: 95%;
}

.form_input_box input.zip1,
.form_input_box input.zip2 {
  width: 25%;
}

.form_input_box input.tel_no {
  width: 95%;
}

.form_input_box input.input_year {
  width: 80px;
}

.form_input_box label {
  margin: 0 7px;
  vertical-align: bottom;
}

#agreement {
  background: #e5ecf5;
  padding: 10px;
  margin-top: 10px;
}

#agreement table {
  width: 100%;
  border: 0;
  margin: 0 5px;
}

#agreement table .agreement_check {
  vertical-align: top;
  width: 38px;
}

#agreement table .agreement_label {
  vertical-align: middle;
}

#agreement a {
  color: #a92c4b;
}

#annotation {
  background: #ffffff;
  padding: 10px;
}

#CheckBlockTextareaCheckarea {
  width: 95%;
}

.error-message {
  margin: 8px;
  color: #F00;
  font-weight: bold;
  background-color: #FFD0D0;
  font-size: 13px;
}

#form_payment_method_credit {
  display: none;
}

#form_payment_method_credit input#OrderCardName,
#form_payment_method_credit input#OrderCardNo {
  width: 95%;
}

.customer_info,
#order_info_payment_box {
  margin-top: 20px;
}

#form_checkout_title {
display: none;
}

#order_info_checkout {
  background-color: #FFF;
  border-bottom: 1px solid #999;
}

#form_upsell {
  background-color: #FFF;
}

#order_info_payment {
  border-bottom: 1px solid #999;
  border-top: 1px solid #999;
  color: #333333;
}

/*アップセルページの上部フォームで不必要な部分を隠す*/
#upsell_order_info #order_info_payment_box {
  display: none;
}

.form_box {
  border-right: 1px solid #999;
  border-left: 1px solid #999;
}

span.form_required,
span.form_notice {
  color: #FFF;
  background-color: #F00;
  font-weight: bold;
  padding: 3px;
  font-size: 12px;
  margin-left: 10px;
}

.form_box_label {
  background-color: #e5ecf5;
  border-bottom: 1px solid #999;
  border-top: 1px solid #999;
  padding: 8px;
  vertical-align: middle;
  text-align: left;
  color: #333;
  margin-bottom: 0;
}

.form_input_box {
  padding: 8px;
  margin-bottom: 0;
  background-color: #FFFFFF;
}

#form_upsell #input_payment_method {
  border-bottom: 1px solid #999;
}

.credit_input {
  width: 97%;
}

.credit_box {
  margin-bottom: 5px;
}

.form_example,
.credit_example {
  padding: 0 8px 8px;
  color: #666666;
  font-size: 13px;
}

.form_input_box input.tel_no,
.form_input_box input.card_date {
  width: 20%;
}

.before_go {
  text-align: center;
}

/************************************************

form_payment_method_select

*************************************************/
#form-payment-method {
  width: 100%;
}

/*=========================
>>> Amazon Payment関連スタイル
/*=========================*/
#oneClickOrderBox {
/*width: 890px;*/
  border: solid 3px #C3C3C3;
  margin: 10px auto 0 auto;
  padding: 20px 0;
  text-align: center;
}
#oneClickOrderBox p.title {
  color: red;
  font-size: 30px;
  font-weight: bolder;
  background: none !important;
}
#oneClickOrderBox p.subTitle {
  color: #fcad55;
  font-size: 20px;
  font-weight: bolder;
  margin: 25px 0;
}
#oneClickOrderBox p.message {
  margin-top: 25px;
}
#oneClickOrderBox img#OffAmazonPaymentsWidgets0.amazon-button-image-2017 {
  max-height: auto !important;
  width: 296px;
  margin: 0 auto;
}
#oneClickOrderArea p.notUseOneClickOrderMessage {
  color: #fcad55;
  margin: 25px 0;
  text-align: center;
  letter-spacing: -2px;
  font-weight: 900;
}
#PayWithAmazon.AmazonPaymentsLoginButton {
  margin: 20px 0 10px;
}
#form_payment_method_amazon_payments_form {
  margin: 10px 0px 0px 0px;
}
/*---------------------------------------

/************************************************

  NP後払い注釈

*************************************************/
#np_area {
  border: 1px solid #000;
  margin: 10px 0;
  padding: 10px;
}

#np_area p {
  margin: 20px 0px 0px;
}

/************************************************

半角・全角制御

*************************************************/
#OrderFamilyKana,
#OrderGivenKana {
  ime-mode: active;
}

#OrderZip1,
#OrderZip2 {
  ime-mode: disabled;
}

#OrderTelNo1,
#OrderTelNo2,
#OrderTelNo3,
#OrderEmail,
#OrderEmailConfirm,
#OrderBirthdayYear {
  ime-mode: disabled;
}

/************************************************

  転売防止用

*************************************************/
.box_c {
  font-size: 10px;
  padding: 0.5em 1em 0.5em 1em;
  margin: 0px 1px 4px 7px;
  line-height: 1.4em;
  background-color: #ffebeb;
  border: double 5px #ff0000;
}

.box_c p {
  color: #ff0000;
  margin-bottom: 0;
}
