@charset "utf-8";
/*--------------------------------------------------*/
/*reset*/
/*--------------------------------------------------*/
html{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #333;
	background:#FFF;
	height: 100%;
}
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
textarea,
p,
th,
td,
section,
article{
	margin:0;
	padding:0;
}
table{
	box-sizing:border-box;
	border-collapse:collapse;
	border-spacing:0;
}
img{
	border:0;
	vertical-align:top;
}

address,
em,
th{
	font-style:normal;
	font-weight:normal;
}
li{
	list-style:none;
}
strong{
	font-weight:bold;
}
#container img{
    vertical-align: top;
}
.mt20{margin-top: 4%;}
.mb20{margin-bottom: 4%;}

/*---------------------------------------

	フォームタイトル・テーブル・フォーム
	
---------------------------------------*/
#order_info, .customer_info, #order_info_payment_box, #form-order{
	padding: 0 3%;
}
#form img {
    vertical-align: top;
    width: 100%;
    display: block;
}
/* フォームタイトル */
.ttl01,
.form_title {
    background-color: #9e7f56;
	color: #ffffff;
	font-weight: bold;
	padding: 8px 8px;
	margin-bottom: 10px;
	font-size: 1.2rem;
}

/* テーブル */
.table_a {
	width: 100%;
}

.table_a td {
	vertical-align: middle;
	text-align: center;
}

.order_info_table {
	margin-bottom: 5px;
}

.table_b,
.order_info_table {
    border-left: 1px solid #9e7f56;
    border-top: 1px solid #9e7f56;
	width: 100%;
}

.table_b th,
.order_info_table th {
    background-color: #f2efea;
    border-right: 1px solid #9e7f56;
    border-bottom: 1px solid #9e7f56;
	padding: 12px;
	vertical-align: middle;
	text-align: center;
	color: #333;
	width: 32%;
	font-size: 1rem;
}

.table_b td,
.order_info_table td {
    border-right: 1px solid #9e7f56;
    border-bottom: 1px solid #9e7f56;
	padding: 12px;
	vertical-align: middle;
	font-size: 1rem;
}

.table_c {
	border-left: 1px solid #5d5286;
	border-top: 1px solid #5d5286;
	width: 100%;
}

.table_c th {
	background: #c5d9fb;
	border-right: 1px solid #5d5286;
	border-bottom: 1px solid #5d5286;
	padding: 8px;
	vertical-align: middle;
	text-align: left;
	color: #333;
	width: 30%;
}

.table_c td {
	border-right: 1px solid #5d5286;
	border-bottom: 1px solid #5d5286;
	padding: 8px;
	vertical-align: middle;
}

.table_d {
	width: 100%;
}

.table_d th {
	vertical-align: top;
	width: 38px;
}

.table_d td {
	vertical-align: top;
}

/* フォーム */
#form_area, #form {
    max-width: 750px;
    margin: 0 auto;
}
#form_area{
    padding: 0 2%;
}
select,
input {
	padding: 10px 5px;
	font-size:15px;
}


input[type="checkbox"],
input[type="radio"] {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);

}

.form-section01 {
	border: 3px solid #5d5286;
  border-radius: 10px 10px 10px 10px;
  padding: 10px;
	background-color:#c5d9fb;
	margin-bottom:10px;
}

.form-section01 li {
	margin-bottom: 10px;
}

.form_notice {
	font-size: 12px;
	color: #666;
}

#agreement {
	background: #c5d9fb;
	padding: 10px;
	margin-top: 10px;
}

#agreement a{
	color: #2d6fca;
	text-decoration: underline;
}

#annotation {
  background:#ffffff;
  padding: 10px;
}

#landing_form {
	background: #FFF;
	border-bottom: 1px solid #5d5286;
}



.form_box{
    border-right: 1px solid #9e7f56;
    border-left: 1px solid #9e7f56;
    border-bottom: 1px solid #9e7f56;
}

span.form_required,
span.form_notice {
	color: #FFF;
	background: #F00;
	font-weight: bold;
	padding: 3px;
	font-size: 12px;
	margin-left: 10px;
}

.form_box_label {
    background: #f2efea;
    border-bottom: 1px solid #9e7f56;
    border-top: 1px solid #9e7f56;
	padding: 8px;
	vertical-align: middle;
	text-align: left;
	color: #333;
	margin-bottom: 0;
	font-size: 1rem;
}

.form_input_box {
	padding: 8px;
	font-size: 1rem;
}

.form_input_box p {
	font-size: 1rem;
}

.form_example {
	padding: 0 8px 8px;
	color: #666666;
  font-size: 1.0rem;
}

.form_example p{
	color: #cc0000;
}

.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: 30%;
}

.form_input_box input.tel_no,
.form_input_box input.input_year {
	width: 20%;
}

.form_input_box #OrderBirthdayMonth,
.form_input_box #OrderBirthdayDay {
	width: 25%;
}

.form_input_box label {
	margin: 0 7px;
	vertical-align: bottom;
}

#confirm_button,#form-order{margin-top: 4%;}

#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;
}

#CheckBlockTextareaCheckarea {
	width: 95%;
}

.error-message {
	margin: 8px;
	color: #F00;
	font-weight: bold;
	background: #FFD0D0;
	font-size: 12px;
}

#form_payment_method_credit {
    background-repeat: no-repeat;
    background-size:contain;
    padding-top:36%;
	display: none;
}
.customer_info,
#order_info_payment_box {
	margin-top: 20px;
}

#form_checkout_title {
	display: none;
}

#order_info_checkout,
#form_upsell {
	background: #FFF;
	border-bottom: 1px solid #9e7f56;
}
#form_checkout_title, #form_payment_title, #order_info_order_title, #order_info_checkout_title, #order_info_payment_title{
    background-color: #9e7f56;
}
#order_info_order th{
    background-color: #f2efea;
}
#order_info_order th, #order_info_order td{
    border-bottom: 1px solid #9e7f56;
    border-left: 1px solid #9e7f56;
}

#order_info_checkout th, #order_info_checkout td{
    border-bottom: 1px solid #9e7f56;
    border-left: 1px solid #9e7f56;
}
#order_info_checkout th{
    background-color: #f2efea;
}
#order_info_payment {
    border-bottom: 1px solid #9e7f56;
    border-top: 1px solid #9e7f56;
    color: #333333;
}
#order_info_payment th{
    background-color: #f2efea;
}
#order_info_payment th, #order_info_payment td{
    border-bottom: 1px solid #9e7f56;
    border-left: 1px solid #9e7f56;
}

/* ＮＰ後払い */
#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;
}

/*---------------------------------------

	お支払い方法（共通）
	
---------------------------------------*/
select, #form_payment_method_select{
	width:100%;
}

/*--------------------------------------------------*/
/* footer */
/*--------------------------------------------------*/
.site-footer .box-info {
	border-top: 2px solid #ccc;
	margin: 20px 10px 15px;
	text-align: left
}
.site-footer .footer-logo {
	margin-top: 15px
}
.site-footer .footer-logo img {
	width: 15%
}
.site-footer ul {
	margin-top: 10px
}
.site-footer ul li {
	display: block;
	padding: 4px 0
}
.site-footer ul li a:link {
	color: #231f63
}
.site-footer .copy {
	background: #9e7f56;
	color: #fff;
	font-size: 0.8rem;
	padding: 6px 0;
	text-align: center
}

@media screen and (min-width: 750px) {
  .site-footer .box-info {
    width: 750px;
    margin: 20px auto 15px;
  }
  .site-footer ul li {
    display: inline-block;
    padding-right: 2em;
  }
  #form-order img{
	width: 65%;
	margin: auto;
  }
}

/* 購入時確認画面メッセージ */
#order_info #order_info_confirm_message td{
	text-align:left;
}
#order_info_confirm_message label{
	cursor :pointer;
	text-decoration:underline;
	color:#0169d8;
}

#order_info_confirm_message input {
    display: none;
}

#order_info_confirm_message .acc_cont {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
	display:block;
}

#order_info_confirm_message input:checked ~ .acc_cont {
    padding-bottom:10px;
    height: auto;
    opacity: 1;
}