@charset "utf-8";
 /* CSS Document */
 /*----------------------
 　 　　top
  ---------------------*/
 #top_main {
 	width:100%;
 }
 #main_img_area {
 	border-bottom: solid 1px #CCC;
 	width:100%;
 	background: #fcfeff;
  }
 #main_img {
 	width:980px;
 	margin:0 auto 10px;
 	padding:0px 0 30px;
 }
 #top_content {
 	width:100%;
 }
 #top_product_area {
 	width:100%;
 }
 .top_product_layout {
 	width:980px;
 	margin:0 auto;
 	position: relative;
 }
 .top_product_layout .ttl {
 	position: absolute;
 	width: 100px;
 }
 .top_product_layout .ttl:after {
 	width: 0;
 	height: 0;
 	border-style: solid;
     border-width: 130px 150px 0 0;
 	border-color: #b51010 transparent transparent transparent;
 	content: "";
 	display: block;
 	position: absolute;
 	top:0;
 	z-index: -1;
 }
 .top_product_layout .ttl .ttl_txt{
 	font-size:123%;
 	padding:20px 8px 0 12px;
 	color: #FFF;
	text-shadow:none;
 }
 .top_product_box {
     width: 880px;
     padding: 50px 0 50px 100px;
     border-bottom: solid 1px #CCC;
 }
 .top_product_box:after {
   display: block;
   clear: both;
   content: "";
 }
 .top_product_box img {
 	width:220px;
 	float:left;
 }
 .top_poroduct_item {
 	width:630px;
 	float:right;
 }
 .top_poroduct_item .p_name {
 	font-size:172%;
 	font-weight:bold;
 	line-height:125%;
 	padding-bottom:20px;
	font-style:normal;
	color:#333;
 }
 .top_poroduct_item .p_catchcopy{
 	font-size:129%;
	font-style:normal;
	color:#333;
 }
 .top_poroduct_item .p_price{
 	padding:20px 0;
	font-style:normal;
	color:#333;
 }
 .top_poroduct_item .p_price .price_b {
 	font-size:129%;
 	font-weight:bold;
	font-style:normal;
	color:#333;
 }
 .top_poroduct_btn {
 	text-align:center;
 	color:#fff;
 	padding: 14px 40px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:#336699 url(../images/parts/arrow1.png) 95% 50% no-repeat;
 	background-size:7px auto ;
 }
 #top_info_area {
 	width:100%;
 }
 #top_info_layout {
 	width:980px;
 	margin:0 auto;
 	padding-top:40px;
 }
 #top_info_layout h1{
 	color:#4a0e00;
 	font-size:143%;
 	font-weight:bold;
 }
 .top_info_box{
 	width:980px;
 	display:table;
 	table-layout: fixed;
 	margin:15px 0;
 }
 .top_info_ttl_area {
 	border-top:solid 3px #336699;
 	border-bottom:solid 1px #CCC;
 	padding:12px 10px;
 	position:relative;
 }
 .top_info_ttl_area img {
 	display: inline-block;
 	vertical-align:text-bottom;
 }
 .top_info_ttl_area .ttl_txt {
 	display: inline-block;
 	color:#000;
     font-size: 129%;
     font-weight: bold;
 }
 .top_info_ttl_area .rss {
     height: 20px;
     position: absolute;
     bottom: 17px;
     right: 0;
 }
 .top_info_ttl_area .rss .top_rss_btn {
 	text-align:center;
 	color:#ff6600;
 	font-weight:bold;
 	padding:6px 10px 6px 27px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background: url(../images/parts/top_info_rsslogo.png) no-repeat 3% 40%;
 	border:solid 1px #ff6600;
 }
 .top_info_news_area {
 	width:100%;
 }
 .top_info_news_area .news_box {
 	width:980px;
 	padding:15px 0;
 }
 .top_info_news_area .news_box:last-child {
 	width:980px;
 	padding-bottom:15px;
 }
 .top_info_news_area .news_box:after {
   display: block;
   clear: both;
   content: "";
 }
 .top_info_news_area .news_box .photo {
 	width:185px;
 	float:left;
 }
 .top_info_news_area .news_box .photo img{
 	width:185px;
 }
 .top_info_news_area .news_box .news_article {
 	width:750px;
 	float:right;
 }
 .top_info_news_area .news_box .news_article .n_ttl {
 	font-size:115%;
 	font-weight:bold;
 	display:block;
 }
 .top_info_news_area .news_box .news_article .date{
 	color:#1f559f;
 	font-size:86%;
 	font-weight:bold;
 }
 .news_btn_area {
 	text-align:right;
 	margin-bottom:30px;
 }
 .top_news_btn {
 	text-align:center;
 	color:#fff;
 	padding:15px 50px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:#336699 url(../images/parts/arrow1.png) 80% 50% no-repeat;
 	background-size:7px auto ;
 }
 /*----------------------
 　 　　form
  ---------------------*/
 input[type="text"] {
 	border:solid #b2b2b2 1px;
 	margin:2px;
 	min-height: 30px;
 	background:#fff;
 }
 input[type="password"] {
 	border:solid #b2b2b2 1px;
 	margin:2px;
 	min-height: 30px;
 	background:#fff;
 }
 input[type="radio"] {
 	cursor: pointer;
 }
 select {
 	border:solid #b2b2b2 1px;
 	padding: 5px;
 	min-height: 30px;
 	background:#fff;
 	cursor: pointer;
 }
 .txtarea01 {
 	width:500px;
 	padding:0 10px;
 }
 .txtarea02 {
 	width:220px;
 	padding:0 10px;
 }
 .txtarea03 {
 	width:200px;
 	padding:0 10px;
 }
 .txtarea04 {
 	width:50px;
 	padding:0 10px;
 }
 .txtarea05 {
 	width:100px;
 	padding:0 10px;
 }
 .top_errormsg_area {
 	padding:10px 0;
 	background:#ffd5d5;
 	text-align:center;
 	margin-bottom:15px;
 }
 .top_errormsg_area p {
 	font-weight:bold;
 	color:#ff0000;
 	font-size:115%;
 }
 .psarea {
 	min-width:240px;
 	padding:0 10px;
 }
 .list01 {
 	min-width:100px;
 }
 .list02 {
 	width:120px;
 }
 .list03 {
 	width:500px;
 }
 table.form_area {
 	width:100%;
 	padding:0;
 	margin:0 0 20px 0;
 	border-bottom:dashed #999999 1px;
 }
 table.form_area th {
 	width:250px;
 	font-weight:bold;
 	text-align:left;
 }
 table.form_area th label {
 	font-weight:bold;
 }
 table.form_area td {
 	text-align:left;
 	padding:10px 0 30px 0;
 }
 .comment.first{
 	padding:0 0 30px 0;
 }
 .comment p{
 	padding-bottom:10px;
 }
 /* 例　*/.example {
 	font-size:86%;
 	color:#999;
 	line-height:120%;
 	margin-bottom:5px;
 }
 /* 説明　*/.explain{
 	font-size:86%;
 	color:#999;
 	line-height:120%;
 	margin-bottom:5px;
 }
 /* 注釈　*/.note {
 	font-size:86%;
 	color:#999;
 	line-height:120%;
 	margin-bottom:5px;
 }
 .error {
 	padding:3px 0;
 	font-size:86%;
 	color:#ff0000;
 	line-height:1.1;
 }
 .error p {
 	padding-bottom:3px;
 }
 .error p.center {
 	text-align:center;
 }
 .error ul li {
 	width:330px;
 	float:left;
 }
 .radiolist1 {
 }
 .radiolist1 input{
 	margin-right:3px;
 }
 .radiolist1 label{
 	margin-right:30px;
 }
 dl.radiolist2 {
 }
 dl.radiolist2:after {
   display: block;
   clear: both;
   content: "";
 }
 dl.radiolist2 dt {
 	width:20px;
 	float:left;
 }
 dl.radiolist2 dd {
 	padding-left:20px;
 	margin-bottom:15px;
 }
 .bottomborder {
 	border-bottom:dashed #999999 1px;
 }
 .txt_en {
 	font-size:86%;
 	line-height:1.0;
 	display:block;
 }
 .txt_en2 {
 	font-size:86%;
 	line-height:1.0;
 	padding-left:18px;
 }
 .txt_en3 {
 	font-size:86%;
 	line-height:1.0;
 }
 .item_area {
 	width:650px;
 	padding-left:20px;
 }
 .item_area2 {
 	width:650px;
 	padding-left:20px;
 	vertical-align:middle;
 	text-align:left;
 }
 .item_area3 {
 	width:300px;
 	padding-left:20px;
 }

 .item_area span.installment,
 .item_area span.times
  {
	 margin-left:20px;
 }

 .ico_area {
 	width:60px
 }
 .ico {
     color:#FFF;
     font-size: 70%;
     font-weight: normal;
     padding: 2px 8px 2px;
     background:#ec620c;
 }
 .st_card_area {
 	width:240px;
 }
 .st_card_area img {
 	width:auto;
 	height:auto;
 	max-width:240px;
 	max-height:180px;
 }
 .btnarea {
 	text-align:center;
 }
 .btnarea li {
     display: inline-block;
     margin: 0 10px;
 }
 .form_box {
 	clear:both;
 }
 input[type="submit"]:hover{
 filter:alpha(opacity=70);
 opacity:0.7;
 }
 input[type="button"]:hover{
 filter:alpha(opacity=70);
 opacity:0.7;
 }
 button[type="button"]:hover{
 filter:alpha(opacity=70);
 opacity:0.7;
 }
 input[type="image"]:hover{
 filter:alpha(opacity=70);
 opacity:0.7;
 }
 .btn_input input[type="submit"] {
 	width:260px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 25px 10px 5px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50% #ad2929;
 	background-size:7px auto;
 }
 .btn_input input[type="button"] {
 	height: 44px;
 	vertical-align: baseline;
 	font-family: none ;
 	width:260px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 25px 10px 5px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50% #ad2929;
 	background-size:7px auto;
 }
 .btn_input_image{
 	vertical-align:top;
 	position:relative;
 	font-family: none ;
 	width:260px;
 	color: #000;
 	font-weight:bold;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:#ad2929;
 }
 .btn_input_image:hover {
 	filter:alpha(opacity=70);
 	opacity:0.7;
 }
 .btn_input_image p{
 	 width:260px;
 	 font-size:115%;
 	 color:#fff;
 	 font-weight:bold;
 	 position:absolute;
 	 left:0;
 	 top: 10px;
 }
 .btn_input_image p:hover {
 	filter:alpha(opacity=70);
 	opacity:0.7;
 }


 /* 送信ボタン - 押せないとき */
 .btn_input input[type="submit"][disabled] {
 	font-family: none ;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50%  #ccc;
 	cursor: default;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 25px 10px 5px;
 	text-decoration:none;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background-size:7px auto;
 }
 .btn_input input[type="submit"][disabled]:hover{
 	filter:none;
 	opacity:1.0;
 }
 .btn_edit input[type="submit"] {
 	font-family: none ;
 	width:260px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 5px 10px 25px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow2.png) no-repeat 8% 50% #039;
 	background-size:7px auto;
 }
 .btn_edit input[type="button"] {
 	font-family: none ;
 	width:260px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 5px 10px 25px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow2.png) no-repeat 8% 50% #039;
 	background-size:7px auto;
 }
 .btn_input2 input[type="submit"] {
 	font-family: none ;
 	width:275px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 28px 10px 5px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50% #ad2929;
 	background-size:7px auto;
 }
 /* 送信ボタン - 押せないとき */
 .btn_input2 input[type="submit"][disabled] {
 	font-family: none ;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50%  #ccc;
 	cursor: default;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 28px 10px 5px;
 	text-decoration:none;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background-size:7px auto;
 }
 .btn_input2 input[type="submit"][disabled]:hover{
 	filter:none;
 	opacity:1.0;
 }
 .btn_edit2 input[type="submit"] {
 	font-family: none ;
 	width:275px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 5px 10px 28px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow2.png) no-repeat 8% 50% #039;
 	background-size:7px auto;
 }
 .btn_next {
 	width:260px;
 	font-size:115%;
 	font-family: none ;
 	font-weight:bold;
 	padding:10px 5px 10px 25px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50% #ad2929;
 	background-size:7px auto;
 	margin:0 auto;
 	display:inline;
 	vertical-align:middle;
 }
 .btn_next a {
 	color: #fff;
 }
 a.btn_return {
     box-sizing: border-box;
     display: block;
 	width:260px;
 	height:45px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	font-family: none ;
 	padding:10px 5px 10px 25px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow2.png) no-repeat 8% 50% #039;
 	background-size:7px auto;
 	margin:0 auto;
 	vertical-align:middle;
 }
 @media all and (-ms-high-contrast:none)
      {
      *::-ms-backdrop,
      a.btn_return{
 	line-height: 146%;
 } /* IE11 */
      }
 .message_area p{
 	margin:10px;
 }
 .message_area ul{
 	margin: 20px 10px;
 }
 .message_area ul li{
 	list-style:disc;
 	margin-left:30px;
 }






.btn_cart input[type="submit"] {
 	width:260px;
 	color: #333;
 	font-weight:bold;
 	font-size:115%;
 	padding:9px 5px 9px 28px;
 	text-decoration:none;
 	cursor: pointer;
	border:1px solid #333;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/cart.png) no-repeat 20% 50% #fff;
 	background-size:20px auto;
 }
  /* 送信ボタン - 押せないとき */
.btn_cart input[type="submit"][disabled] {
 	font-family: none ;
 	background:url(../images/parts/cart_off.png) no-repeat 20% 50%  #ccc;
 	cursor: default;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:9px 5px 9px 28px;
 	text-decoration:none;
	border:1px solid #ccc;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background-size:20px auto;
 }
.btn_cart input[type="submit"][disabled]:hover{
 	filter:none;
 	opacity:1.0;
 }

 /*----------------------
 　 　　member
  ---------------------*/
 /*radiobutton design */
 .radio01_input{
   display: none;
 }
 .radio01_input + label{
 	min-width:130px;
   position: relative;
   margin:0 0 0 10px;
     padding: 8px 20px 8px 53px;
     transition: .3s;
     color: #444;
     border-radius: 5px;
 	background-color:#f7f7f7;
 	border: 1px solid #aaabb0;
     display: inline-block;
 	box-shadow: 0 2px 0 rgba(206,206,209,1);
 }
 .radio01_input + label::before{
   content: "";
   display: block;
   position: absolute;
   top:11px;
   left: 8px;
   width: 15px;
   height: 15px;
   border: 1px solid #999;
   background-color:#FFF;
   border-radius: 50%;
 }
 .radio01_input:checked + label{
     background: #fff;
     color: #333;
 	font-weight:bold;
 	border: 1px solid #fff;
 	box-shadow: 0 0 0 3px #333;
 }
 .radio01_input:checked + label::after{
   content: "";
   display: block;
   position: absolute;
   top: 15px;
   left: 12px;
   width: 9px;
   height: 9px;
   background: #448eff;
   border-radius: 50%;
   transform: scale(1,1);
 }
 .radio01_input + label::after {
     content: "";
     display: block;
     position: absolute;
     top: 15px;
 	  left: 12px;
 	  width: 9px;
 	  height: 9px;
 	  background: #448eff;
     border-radius: 50%;
     transition: .4s;
     transform: scale(0,0);
 }






	.btn_mailsend {
	background:#2f2e2e url(../images/parts/airplane.png) no-repeat 5% center ;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	color: #FFF;
	font-weight:bold;
	font-size:86%;
	width: 135px;
	padding: 6px 8px 6px 30px;
	text-decoration:none;
	margin-left:5px;
	cursor:pointer;
	}

	.btn_mailsend:disabled {
	background:#c2c2c2 url(../images/parts/airplane.png) no-repeat 5% center ;
	color: #e9e6e6;
	width: 135px;
	cursor:default;


}
.btn_mailsend:disabled:hover {
	filter:none;
	opacity:1;
}
.mailsend_guide {
	color:#999;
	margin:5px 0;
	font-size:12px;
}



 /*----------------------
 　 　　login
  ---------------------*/

  #login_img {
 	width:980px;
 	margin:0 auto 10px;
    padding: 10px 0 20px 0;
 }

	ul.login_li {
		width:85%;
	  margin: 0 auto;
	}

	ul.login_li li {
		background:#d9e9f8;
		padding:15px 10px 5px 10px;
		margin-bottom:8px;

	}

  dl.login_dl01 {
	  width:100%;
	  display:inline-table;
}
  dl.login_dl01 dt {
	  display:table-cell;
	  vertical-align:middle;
	  text-align:center;
	  width:40%;
	  font-size:115%;
	  font-weight:bold;
 }
  dl.login_dl01 dd {
	  display:table-cell;
	  vertical-align:bottom;
	  text-align:center;
  }
  dl.login_dl01 dd p {
	  font-size:86%;
	  margin-top:10px;

  }



   dl.login_dl02 {
	  width:85%;
	  margin: 0 auto;
}
   dl.login_dl02 dt {
	 }
   dl.login_dl02 dd {
	   font-size:86%;
	 }


 table#login_layout {
 	width:100%;
 	margin:0 auto 30px;
 	border: solid 1px #CCC;
 }
 table#login_layout th {
 	width: 460px;
 	text-align:center;
 	border-right: solid 1px #CCC;
	border-bottom: solid 1px #CCC;
 }
 table#login_layout th.first-time {
	 background:url(../images/parts/beginner_mark.png) no-repeat 20px 7px;
 }
 table#login_layout th.ttl_sub2 {
 	padding: 10px 14px;
     background-color: #336699;
     color: #FFF;
     font-weight: bold;
     font-size: 124%;
 }
 table#login_layout th.ttl_sub2.first-time {
	padding-left: 54px;
 }
 table#login_layout td {
 	width: 460px;
 	box-sizing: border-box;
 	background: #f1f1f1;
 	border-right: solid 1px #CCC;
 	padding-bottom:20px;
 }
  table#login_layout td.ft {
 	background: #fff;
 }

 table#login_layout p.txt01 {
     text-align: center;
     padding: 20px;
 }
 table#login_layout p.txt02 {
     text-align: left;
     padding: 20px 12px;

 }

 table#login_layout table.form_login_area {
     width: 85%;
     margin: 10px auto;
 }
 table#login_layout table.form_login_area th {
 	width:40%;
 	font-weight:bold;
 	text-align:left;
 	border:none;
 }
 table#login_layout table.form_login_area td {
 	text-align:left;
 	padding:10px 0;
 	border:none;
 }
 #login_layout .btn_input {
 }
 #login_layout .btn_input input[type="submit"] {
 	width:260px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 25px 10px 5px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50% #ad2929;
 	background-size:7px auto;
 }
 #login_layout .btn_input_long input[type="submit"] {
 	width:300px;
 	color: #fff;
 	font-weight:bold;
 	font-size:115%;
 	padding:10px 25px 10px 5px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background:url(../images/parts/arrow1.png) no-repeat 92% 50% #ad2929;
 	background-size:7px auto;
 }



 /* flow */

 .flow_wrap{
	width:980px;
	border:solid 1px #ccc;
	margin-bottom: 10px;
 }

 .flow_area01 {
	 width:946px;
	 height:284px;
	 clear:both;
	 margin: 0 auto;
	 padding: 0;
 }

 .ac-small .flow_area01{
	 padding: 20px 0 0 0;
 }

 .flow_area01 a,
 .flow_area02 a {
	 color:#333;
 }
 .flow_area01 .step_box {
	 position:relative;
	 width:280px;
	 height:280px;
	 background:#e5f2ff;
	 float:left;
 }
 .flow_area01 .arrow {
	 float:left;
    padding: 120px 15px 0 15px;
 }

 .flow_area02 {
	 width:946px;
	 height:302px;
	 clear:both;
	 margin: 0 auto;
 }
 .flow_area02 .step_box {
	 position:relative;
	 width:280px;
	 height:320px;
	 background:#e5f2ff;
	 float:right;
 }
 .flow_area02 .step6_box {
	 position:relative;
	 width: 280px;
	 height:280px;
	 background:#fff;
	 float:right;
}

 .flow_area02 .arrow {
	 float:right;
    padding: 120px 15px 0 15px;
 }

 .flow_arrow_area {
	 width:860px;
	 padding:20px 120px 20px 0;
	 text-align:right;
 }

 .flow_area01 .step_box dl,
 .flow_area02 .step_box dl {
	 margin:0 auto;
	 text-align:center;
 }
 .flow_area01 .step_box dl dt,
 .flow_area02 .step_box dl dt {
	 font-weight:bold;
	 font-size:22px;
	 margin-top:18px;
 }
 .flow_area01 .step_box dl dt span,
 .flow_area02 .step_box dl dt span{
	 font-size:28px;
 }
 .flow_area01 .step_box img,
 .flow_area02 .step_box img {
	position:absolute;
	top: auto;
	left: 70px;
	right: 0;
	bottom: 18px;
 }

 .flow_area02 .step6_box dl {
	 margin:0 auto;
	 text-align:left;
	 clear:both;
 }
 .flow_area02 .step6_box dl dt {
	 font-weight:bold;
	 font-size:22px;
	 float:left;
	 padding-right:30px;
 }
 .flow_area02 .step6_box dl dt span{
	 font-size:28px;
 }
 .flow_area02 .step6_box dl dd{
	 float:left;
 }
 .flow_area02 .step6_box img {
	position:absolute;
	top: 64px;
	left: 0px;
	right: 0;
	bottom: 0;
 }
 .flow_txt {
	 text-align:right;
	 padding:20px 0 30px 0;
 }

 .ac-container{
	width: 980px;
	margin: 10px auto 30px auto;
	text-align: left;
}
.ac-container label{
	position: relative;
	z-index: 20;
	display: block;
	cursor: pointer;
	color: #FFF;
	line-height: 33px;
	font-size: 19px;
	background: linear-gradient(#336699, #013263);
	box-shadow:
		0px 0px 0px 1px rgba(155,155,155,0.3),
		1px 0px 0px 0px rgba(255,255,255,0.9) inset,
		0px 2px 2px rgba(0,0,0,0.1);
	margin: 0;
}
.ac-container label:hover{
		background: #336699;

}
.ac-container input:checked + label,
.ac-container input:checked + label:hover{
	background: linear-gradient(#336699, #013263);
	color: #FFF;
	cursor: pointer;

}
.ac-container label:hover:after,
.ac-container input:checked + label:hover:after{
	content: '';
	position: absolute;
	width: 24px;
	height: 24px;
	right: 13px;
	top: 7px;
}
.ac-container input:checked + label:hover:after{
}
.ac-container input{
	display: none;
}
.ac-container article{
	background: rgba(255, 255, 255, 0.5);
	margin-top: -1px;
	overflow: hidden;
	height: 0px;
	position: relative;
	z-index: 10;
	transition: height 0.5s, box-shadow 0.6s linear;
}
.ac-container article p{
	font-style: italic;
	color: #777;
	line-height: 23px;
	font-size: 14px;
	padding: 20px;
	text-shadow: 1px 1px 1px rgba(255,255,255,0.8);
}
.ac-container input:checked ~ article{
	transition: height 0.5s, box-shadow 0.1s linear;
	box-shadow: 0px 0px 0px 1px rgba(155,155,155,0.3);

}
.ac-container input:checked ~ article.ac-small{
	height: auto;
}

.ac-container label.arrow:before,
.ac-container label.arrow:after{
	position: absolute;
	top: -8px;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.ac-container label.arrow:before{
    right: 20px;
    width: 14px;
    height: 14px;
    border-top: 4px solid #FFF;
    border-right: 4px solid #FFF;
    transform: rotate(135deg);
}


.ac-container input:checked + label.arrow:before,
.ac-container input:checked + label.arrow:after
{
	position: absolute;
	top: 8px;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.ac-container input:checked + label.arrow:before{
    right: 20px;
    width: 14px;
    height: 14px;
	border-top: 4px solid #FFF;
	border-right: 4px solid #FFF;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);

}

.ac-container input:checked + label:hover{
		background: #336699;

}

 /* login_link */

 .login_link_area {
	 width:980px;
	 margin:0 auto;
	 border:3px solid #cccccc;
	 box-sizing:border-box;
	 display:table;
	 padding:20px 28px;
	 margin-bottom:20px;

 }
 .login_link_area .link_box {
	  display:table-cell;
	  width:460px;
 }
  .login_link_area dl {
	  width:430px;
  }
  .login_link_area dl.first {
	  margin-right:58px;
  }
   .login_link_area dl dt{
	   color:#336699;
	   font-weight:bold;
	   font-size:129%;
	   margin-bottom:10px;

   }
   .login_link_area dl dd{
	   margin-bottom:5px;
	   line-height:200%;

   }

.link_box a {
	width:430px;
	position: relative;
	display: inline-block;
	background:#eaeaea;
	color:#585858;
	font-weight:bold;
	text-decoration: none;
	transition: all .3s;
	padding: 0 10px;
}
.link_box a::after {
   content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 3px #009ce8;
    border-right: solid 3px #009ce8;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 8px;
    margin-top: -4px;
}

 /* login_info */
 .login_info_news_area {
 	width:100%;
	padding-bottom:15px;
 }

 .login_info_news_area h3 {
	 display:inline;
	 color:#336699;
	 border:1px solid #336699;
	 padding:2px 5px;

 }
 .login_info_news_area .news_box {
 	width:980px;
 	padding:15px 0;
 }
 .login_info_news_area .news_box:last-child {
 	width:980px;
 	padding-bottom:15px;
 }
 .login_info_news_area .news_box:after {
   display: block;
   clear: both;
   content: "";
 }
 .login_info_news_area .news_box .photo {
 	width:120px;
 	float:left;
 }
 .login_info_news_area .news_box .photo img{
 	width:120px;
 }
 .login_info_news_area .news_box .news_article {
 	width:850px;
 	float:right;
 }
 .login_info_news_area .news_box .news_article .n_ttl {
 	font-weight:bold;
 	display:block;
 }
 .login_info_news_area .news_box .news_article .date{
 	color:#1f559f;
 	font-size:86%;
 	font-weight:bold;
 }

 /*----------------------
 　 　　mypage
  ---------------------*/
 #mypage_area .ttl {
 	font-size:129%;
 	font-weight:bold;
 	padding:10px;
 }
 #mypage_area .link_area {
 	 border: 1px solid #999;
 }
 #mypage_area .link_box {
 	width:978px;
 	border-bottom:dashed #999999 1px;
 }
 #mypage_area .link_box:last-child {
 	border-bottom:none;
 }
 #mypage_area .link_box a{
 	width:938px;
 	display: block;
 	padding:20px ;
 }
 #mypage_area .link_box a:hover{
 	background:#e4edf6;
 }
 #mypage_area .link_box span.item {
 	width:220px;
 	font-size:115%;
 	padding:20px 20px 20px 10px;
 	font-weight:bold;
 }
 #mypage_area .link_box span.txt {
 	color:#333;
 	font-size:100%;
 }
 /*----------------------
 　 　　order_history
  ---------------------*/
 .pagenav_area {
 	width:980px;
 	margin:0 auto;
 	padding-bottom:10px;
 }
 .pagenav_area:after {
 	display:block;
 	clear:both;
 	content:"";
 }
 .pagenav_area p.allpage {
 	width:200px;
 	line-height:2.0;
 	float:left;
 }
 ul.pagenav {
 	/zoom: 1;
 	overflow: hidden;
 	padding: 0;
 	background: #fff;
 	float:right;
 }
 ul.pagenav li {
 	float: left;
 	margin: 0 5px 5px 0;
 }
 ul.pagenav li span,
 ul.pagenav li a {
 	float: left;
 	padding: 5px 12px;
 	background: #fff;
 	border:#b2b2b2 1px solid;
 	color: #000;
 }
 ul.pagenav li span {
 	background: #336699;
 	color:#fff;
 	border:1px solid #336699;
 }
 ul.pagenav li a:hover {
 	background: #e1eaf6;
 }
 .order_history_box {
 	width:980px;
 	padding:30px 0px 40px 0px;
 	border-top:1px dashed #b2b2b2;
 }

 .order_history_box h2{
    font-weight: bold;
    padding: 5px 0 5px 0;
    font-size: 14px;
    margin: 20px 0 0px 0;
 }

 .order_history_box:last-child {
 	border-bottom:1px dashed #b2b2b2;
 }
 .order_history_box ul {
 	margin:0 3px;
 }
 .order_history_box ul.data:after {
 	display:block;
 	clear:both;
 	content:"";
 }
 .order_history_box ul.data li{
 	float:left;
 	margin-right:10px;
 }
 .order_history_box ul.data li.right {
 	float:right;
 	margin-right:0px;
 }
 .order_history_box ul.data li .ttl {
 	font-weight:bold;
 }
 .order_history_box ul.data span.installment{}
 .order_history_box ul.data span.times {
	 margin-left:10px;
 }


 .order_history_box .dlurl {
 	font-weight:bold;
 	background:#eaeaea;
 	padding:10px;
 }
 table.order_history_area {
 	width:980px;
 	padding:0;
 	border:#b2b2b2 1px solid;
 }
 table.order_history_area th{
 	background-color:#d1dae9;
 	padding:5px;
 	border:#b2b2b2 1px solid;
 	vertical-align:middle;
 	line-height:1.3;
 }
 table.order_history_area td{
 	padding:5px;
 	text-align:center;
 	border:#b2b2b2 1px solid;
 	vertical-align:middle;
 }
 table.order_history_area .goodscode {
 	width:15%;
 }
 table.order_history_area .goodsname {
 	width:30%;
 }
 table.order_history_area .unitprice {
 	width:26%;
 }
 table.order_history_area .number {
 	width:7%;
 }
 table.order_history_area .subtotal {
 	width:15%;
 }
 table.order_history_area td.price{
 	text-align:right;
 }
 table.order_history_area td p {
 	padding:5px 0;
 }
 table.order_history_area .price_ttl {
 	font-weight:bold;
 }
 /**********************************
 　　注文系　　　
 /*********************************/
 /*----------------------
 　 　　step
  ---------------------*/
 #step_area {
 	width:980px;
 	margin:30px auto;
 }
 #step_area ul li{
 	display: inline;
 	padding:0;
 	margin:0;
 }
 /*----------------------
 　 　　order
  ---------------------*/
 table.order_area {
 	width:100%;
 	padding:0;
 	margin:0 0 20px 0;
 	border:#b2b2b2 1px solid;
 }
 table.order_area th{
 	background-color:#d1dae9;
 	padding:10px;
 	border:#b2b2b2 1px solid;
 	vertical-align:middle;
 }
 table.order_area td{
 	padding:10px;
 	text-align:center;
 	border:#b2b2b2 1px solid;
 	vertical-align:middle;
 }
 table.order_area .goodscode {
 	width:20%;
 }
 table.order_area .goodsname {
 	width:32%;
 }
 table.order_area .unitprice {
 	width:26%;
 }
 table.order_area .number {
 	width:7%;
 }
 table.order_area .subtotal {
 	width:15%;
 }
 table.order_area td.price{
 	text-align:right;
 }

table.order_area.left_type th{
	text-align: left;
	width: 200px;
}

table.order_area.left_type td{
	text-align: left;

}

 .price_red {
 	color:#960000;
 	font-weight:bold;
 }
 table.order_area td p {
 	padding:5px 0;
 }
 table.order_area .price_ttl {
 	font-weight:bold;
 }
 .btn_postalcode {
 	border:solid #b2b2b2 1px;
 	color: #333;
 	font-weight:bold;
 	font-size:86%;
 	width: 100px;
 	padding: 5px 25px 5px 15px;
 	text-decoration:none;
 	margin:0 0 0 20px;
 	background:url(../images/parts/arrow3.png) no-repeat 92% 50% #dfdfdf;
 	background-size:7px auto;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 }
 table.order_area ul.link  {
	 margin:15px 0px 0px;
 }

 table.order_area ul.link li {
	 display:inline-block;
	 text-align:center;
	 padding:0px 5px;
 }
  table.order_area ul.link li + li {
  border-left: 1px solid #333;
}

 .change_area {
 	width:100%;
 	margin:0 auto 20px;
 	text-align:right;
 }
 .change_area2 {
 	width:100%;
 	margin:0 auto;
 	text-align:right;
 }
 .change_area .btn_change,
 .change_area2 .btn_change {
 	color:#fff;
 	font-weight:bold;
 	font-size:86%;
 	padding: 5px 15px;
 	text-decoration:none;
 	margin:0 0 0 20px;
 	background:#2f2e2e;
 	background-size:7px auto;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 }
 .change_area2 .price_ttl{
	 margin-left:10px;
 }
 .check_area {
 	width:60%;
 	text-align:left;
 	margin:0 auto 30px;
 }
 dl.check1 dt {
 	width:20px;
 	display: inline;
 }
 dl.check1 dd {
 	padding-left:20px;
 	margin-bottom:15px;
 	display: inline;
 }
 .order_number{
 	font-weight:bold;
 }
 dl.form_layout {
 	margin:20px 0 10px 0;
 }
 dl.form_layout:after {
 	display:block;
 	clear:both;
 	content:"";
 }
 dl.form_layout dt {
 	float:left;
 	clear: left;
 	width:150px;
 }
 dl.form_layout dd {
 	padding-left:150px;
 }
 div.notice {
	 border:1px solid red; padding:3px;
 }
 div.notice span.ttl {
	 color:red;
 }

 .reconfirm {
 	margin:20px 0;
 }
 .btn_reconfirm input[type="submit"] {
 	width: 100px;
 	background: #2f2e2e;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	color: #fff;
 	font-weight:bold;
 	padding: 5px 10px;
 	text-decoration:none;
 	cursor: pointer;
 }
 ul.available_img li {
 	display:inline;
 }



 /*  paymentinfo design  */
 .accordion {}


 .accordion .acc_box {
 	position:relative;
 	min-height: 120px;
 }




 .accordion .acc_inner {
 	padding-left:250px;
 	padding-bottom: 15px;
 }
 .accordion .acc_heading {
	display:block;
	word-wrap: break-word;
   width:950px;
   height:120px;
   position:relative;
   margin: 0;
   cursor:pointer;
   clear:both;
   padding: 15px 0 5px 30px;
   border-top: dashed #999999 1px;
 }
 .accordion .acc_heading .head_title {
	width:190px;
	float:left;
 }
 .accordion .acc_heading .head_side {
 	position:absolute;
 	left:250px;
 	top:15px;
 }
 .accordion .acc_heading.ahed02 {
   height:0px;
 }


 .accordion .acc_content {
   overflow: hidden;
   max-height: 0;
   transition: max-height 0.1s ease-out;
 }
 .accordion .acc_radio {
	width:100%;
	display:block;
	position:absolute;
	opacity:0;
	height:35px;
	top:0;
	left:0;
	border:none;
	border-radius:0;

 }

 .accordion .acc_radio:checked + label .acc_content {
   max-height: 9999px;
   transition: max-height 2s ease-in;
 }
 .acc_radio + label::before{
     content: "";
     display: block;
     position: absolute;
     top: 18px;
     left: 0px;
     width: 15px;
     height: 15px;
     border: 2px solid #0d0d0d;
     background-color: #FFF;
     border-radius: 50%;
 }
 .acc_radio:checked + label::after{
     content: "";
     display: block;
     position: absolute;
     top: 23px;
     left: 5px;
     width: 9px;
     height: 9px;
     background: #005ce8;
     border-radius: 50%;
    transform: scale(1,1);
 }
 .acc_radio + label::after {
    content: "";
    display: block;
    position: absolute;
     top: 23px;
     left: 5px;
    width: 9px;
    height: 9px;
    background: #005ce8;
    border-radius: 50%;
    transition: .4s;
    transform: scale(0,0);
 }



 .disabled .acc_radio + label::before{
	display: none;
 }

  .disabled .acc_heading{
	  cursor: default;
  }

 /*----------------------
 　 　　Product
  ---------------------*/
 .goods_area {
 	width:980px;
 	padding:20px 0;
 }
 .goods_area:after {
   display: block;
   clear: both;
   content: "";
 }
 .goods_area img {
 	float:left;
 }
 .goods_info{
 	width:470px;
 	float:right;
 }
 .goods_info .g_name {
 	font-size:143%;
 	font-weight:bold;
 	line-height:125%;
 	padding-bottom:20px;
 }
 .goods_info .g_catchcopy {
 	padding-bottom:20px;
 }
 .goods_info table.g_item{
 	width:470px;
 	border-top:dashed #999999 1px;
 	border-bottom:dashed #999999 1px;
 	margin-bottom:15px;
 }
 .goods_info table.g_item th{
 	width:130px;
 	text-align:left;
 	font-weight:bold;
 	padding:10px 0 5px 0;
 }
 .ttl_goods {
 	padding:2px 14px;
 	background-color:#747c8b;
 	color:#FFF;
 	font-weight:bold;
 	margin-bottom:3px;
 }
 .g_description {
 	margin-bottom:10px;
 }
 .g_licensing {
 	border-bottom:1px solid #336699;
 	border-right:1px solid #336699;
 	border-left:1px solid #336699;
 	padding:10px;
 	margin-bottom:20px;
 }
 .g_licensing p {
 	width: 940px;
 	padding:10px;
 	height:500px;
 	overflow: auto;
 }
 .check_area2 {
 	width:20%;
 	text-align:left;
 	margin:0 auto 15px;
 }
 .taxin {
 	font-size:86%;
 }
 .sel_price {
 	font-size:122%;
 	font-weight:bold;
 }


 /*----------------------
 　 　　Viewnews
  ---------------------*/
 #container {
 	width:980px;
 	margin:0 auto;
 }
 #container:after {
 	display:block;
 	clear:both;
 	content:"";
 }
 #side {
 	width:220px;
 	float:left;
 }
 #side .ttl_side {
 	font-size:129%;
 	padding-bottom:10px;
 }
 #side li {
 	padding:10px 5px;
 	border-bottom:dashed #999999 1px;
 	font-size:86%;
 }
 #side li:first-child {
 	border-top:dashed #999999 1px;
 }
 #side li.active{
 	background-color:#336699;
 }
 #side li.active a{
 	color:#fff;
 }
 #news_main {
 	width:730px;
 	float:right;
 }
 #news_main h1#ttl {
 	width:690px;
 	height:33px;
 	padding:22px 0px 15px 40px;
 	background:url(../images/parts/top_info_icon.png) no-repeat 2% 50% ;
 	font-size:129%;
 	font-weight:bold;
 	 border-top: solid 3px #336699;
     border-bottom: solid 1px #CCC;
     position: relative;
 }
 #news_main h1#ttl .rss  {
     width: 240px;
     height: 20px;
     position: absolute;
 	top:25px;
     right: 0;
 	font-size:72%;
 }
 #news_main h1#ttl .rss .rss_btn {
 	text-align:center;
 	color:#ff6600;
 	font-weight:bold;
 	padding:6px 10px 6px 27px;
 	text-decoration:none;
 	cursor: pointer;
 	border-radius: 5px;
 	-moz-border-radius: 5px;
 	-webkit-border-radius: 5px;
 	background: url(../images/parts/top_info_rsslogo.png) no-repeat 3% 40%;
 	border:solid 1px #ff6600;
 }
 #news_main .news_box {
 	width:730px;
 	padding:15px 0;
 }
 #news_main .news_box dl {
 	margin-bottom:15px;
 }
 #news_main .news_box .n_ttl {
 	font-size:115%;
 	font-weight:bold;
 }
 #news_main .news_box .date{
 	color:#1f559f;
 	font-size:86%;
 	font-weight:bold;
 }
 #news_main .news_box .news_article {
 	width:730px;
 }
 #news_main .news_box .news_article:after {
 	display:block;
 	clear:both;
 	content:"";
 }
 #news_main .news_box .news_article .photo {
 	width:300px;
 	float:left;
 	margin:5px 20px 10px 0;
 }
 #news_main .news_box .news_article .photo img {
 	width:300px;
 }
 #news_main .news_box .news_article .txt {
 	width:100%;
 }
 #news_main .news_box .link_area {
 	width:100%;
 	text-align:right;
 	margin:10px 0;
 }
 /*----------------------
 　 　　Upload
  ---------------------*/
 .upload_area{
 	width: 980px;
 	margin: 0 auto;
 	min-height: 300px;
 }
 ul.uploadnumber {
 	margin-bottom:40px;
 }
 ul.uploadnumber li {
 	list-style: outside decimal;
 	margin:10px 0 0 20px;
 }
 .upload_img_area {
 	display: table;
 	border-collapse: separate;
 	border-spacing:10px;
 }
 .upload_area .photoImg{
 	width: 600px;
 	height: 300px;
 	border:solid 1px #CCC;
 	background: #EEE;
 	display:table-cell;
 }
 .img_adjustment{
     min-width: 100%;
     max-width: 100%;
 }
 .upload_area .photoBtn{
 	width:300px;
 	vertical-align: bottom;
 	text-align: left;
 	margin:0 0 15px 10px;
 }
 .upload_area .uploadBtn{
 	width:200px;
 	vertical-align: bottom;
 	text-align: left;
 	display:table-cell;
 }
 .upload_area .photoselected {
 	display: block;
     font-weight: bold;
     padding: 14px;
     text-align: center;
     box-sizing: border-box;
     cursor: pointer;
     vertical-align: top;
     white-space: nowrap;
     color: #5f5f5f;
     border: 1px solid #ccc;
     background: linear-gradient(#fff, #f0f0f0);
     background-color: #f0f0f0;
     text-shadow: 0 1px #fff;
 }
 #file-image{
 	/*display: none;*/
 }
 .btn_input.save input[type="submit"] {
     width: 260px;
     color: #fff;
     font-weight: bold;
     font-size: 115%;
     padding: 10px 10px 10px 5px;
     text-decoration: none;
     cursor: pointer;
     border-radius: 5px;
     -moz-border-radius: 5px;
     -webkit-border-radius: 5px;
     background: #039;
     background-image: none;
     background-size: 7px auto;
 }
 .btn_edit.delete input[type="submit"] {
     width: 260px;
     color: #fff;
     font-weight: bold;
     font-size: 115%;
     padding: 10px 5px 10px 10px;
     text-decoration: none;
     cursor: pointer;
     border-radius: 5px;
     -moz-border-radius: 5px;
     -webkit-border-radius: 5px;
     background: #ad2929;
     background-image: none;
     background-size: 7px auto;
 }
 .upload_btn li{
 	margin: 0 100px;
 }
 /*----------------------
 　 　　policy
  ---------------------*/
 .policy_message_box{
     border: dashed #c10000 1px;
     padding: 15px;
     margin-bottom: 20px;
     font-weight: bold;
     text-align: center;
 }
 #policy_area {
 	padding:0 10px;
 	margin-bottom:30px;
 }
 #policy_area h2 {
 	font-weight: bold;
     font-size: 134%;
 	margin-top:30px;
 }
 #policy_area p {
 	margin:10px 0;
 }
 #policy_area ul li {
 	list-style: outside decimal;
 	margin:10px 0 0 30px;
 }
 #policy_area ol {
 	list-style: none;
 	margin:10px 0;
 }
 #policy_area ol li {
 	text-indent:-1.3em;
 	list-style-type:none;
 	list-style-position:outside;
 	counter-increment: cnt;
 }
 #policy_area ol li:before{
 	display: marker;
 	content: counter(cnt) ") ";
 }
 #policy_area dl {
 	margin:10px 0;
 	text-align:right;
 }
 #policy_area dl dt {
 	display:inline-block;
 	vertical-align: top;
 	width:220px;
 	margin:5px 10px 0 0;
 	font-weight:bold;
 	text-align:left;
 }
 #policy_area dl dd {
 	display:inline-block;
 	width:700px;
 	text-align:left;
 	margin:5px 0;
 }
 #policy_area p.attention {
 	color:#333;
 	width:930px;
 	margin:20px auto 30px;
 }
 #policy_area p.txtr {
 	text-align:right;
 }
 #policy_area table {
 	margin-top:20px;
 	border-top:1px solid #999;
 	border-left:1px solid #999;
 }
 #policy_area table th {
 	font-weight:bold;
 	font-size:115%;
 	border-bottom:1px solid #999;
 	border-right:1px solid #999;
 	padding:5px;
 }
 #policy_area table td {
 	border-bottom:1px solid #999;
 	border-right:1px solid #999;
 	padding:5px;
 }
 /*------------------------------------
 　 　　CommercialTransactions
  -----------------------------------*/
 .CT_table {
 	width:96%;
 	margin:0 auto;
 	border: 1px solid #999;
 	margin-bottom:30px;
 }
 .CT_table th {
 	border-left: 1px solid #999;
 	border-right: 1px solid #999;
 	border-bottom: 1px solid #999;
 	padding:10px;
 	font-weight :bold;
 	text-align:left;
 }
 .CT_table td {
 	border-right: 1px solid #999;
 	border-bottom: 1px solid #999;
 	padding:10px;
 }
 /*------------------------------------
      checkbox design
  -----------------------------------*/
 .checkbox01-input{
   display: none;
 }
 .checkbox01-parts{
   padding-left: 20px;
   position:relative;
   margin-right: 20px;
 }
 .checkbox01-parts::before{
   content: "";
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   width: 15px;
   height: 15px;
   border: 1px solid #999;
   border-radius: 4px;
 }
 .checkbox01-input:checked + .checkbox01-parts::before{
  background-color:#448eff;
  border: 1px solid #448eff;
 }
 .checkbox01-input:checked + .checkbox01-parts::after{
   content: "";
   display: block;
   position: absolute;
   top: 1px;
   left: 5px;
   width: 4px;
   height: 8px;
   transform: rotate(40deg);
   border-bottom: 3px solid #fff;
   border-right: 3px solid #fff;
 }
/*----------------------
　 　　cookie
 ---------------------*/
.cookie-wrapper {
  position: fixed;
  bottom: 0;
  width: 100%;
  font-size: 12px;
  color: #fff;
  background: rgba(0, 0, 0, .9);
  padding: 30px 0;
  box-sizing: border-box;
  z-index: 100;
}
.cookie-content {
  position: relative;
  width: 980px;
  margin: 0 auto;
}
.cookie__close-button {
  cursor: pointer;
  background-color: #747474;
  color: #fff;
  width: 36px;
  height: 36px;
  line-height: 1.0;
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
  font-size: 2.4em;
}
.cookie-agreement {
  text-align: left;
  display: flex;
  gap: 80px;
  padding-top: 20px;
}
.cookie-check {
  display: flex;
  gap: 40px;
}
.cookie-function {
  display: flex;
  align-items: center;
}
.cookie-marketing {
  display: flex;
  align-items: center;
}
.toggle-button-function {
  display: inline-block;
  position: relative;
  width: 48px;
  height: 24px;
  border-radius: 50px;
  background-color: #E6E0E9;
  cursor: pointer;
  transition: background-color .4s;
  margin-left: 12px;
}
.toggle-button-marketing {
  display: inline-block;
  position: relative;
  width: 48px;
  height: 24px;
  border-radius: 50px;
  background-color: #E6E0E9;
  cursor: pointer;
  transition: background-color .4s;
  margin-left: 12px;
}
.toggle-button-function:has(:checked) {
  background-color: #0065CC;
}
.toggle-button-marketing:has(:checked) {
  background-color: #0065CC;
}
.toggle-button-function::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  box-shadow: 0 0 5px rgb(0 0 0 / 20%);
  background-color: #fff;
  content: '';
  transition: left .4s;
}
.toggle-button-marketing::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  box-shadow: 0 0 5px rgb(0 0 0 / 20%);
  background-color: #fff;
  content: '';
  transition: left .4s;
}
.toggle-button-function:has(:checked)::after {
  left: 24px;
}
.toggle-button-marketing:has(:checked)::after {
  left: 24px;
}
.toggle-button-function input {
  display: none;
}
.toggle-button-marketing input {
  display: none;
}
.cookie-permission a {
  display: inline-block;
  min-width: 80px;
  height: 24px;
  padding: 0 10px;
  border-radius: 5px;
  background: #0065CC;
  color: #FFF;
  line-height: 24px;
  text-align: center;
}
/*----------------------
 　 　　modal
  ---------------------*/
.modal-wrapper {
  z-index: 1000;
  background-color: rgba(0, 0, 0, 0.8);
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.modal-content {
  background-color: #FFF;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 800px;
  border-radius: 10px;
  padding: 80px;
  box-sizing: border-box;
}
.modal__close-button {
  background-color: #000;
  color: #fff;
  width: 36px;
  height: 36px;
  line-height: 0.9;
  text-align: center;
  position: absolute;
  top: -18px;
  right: -18px;
  border-radius: 18px;
  font-size: 2.2rem;
  cursor: pointer;
}
.modal-content {
  font-size: 16px;
  text-align: center;
  color: #333;
}
.modal__text-01-wapper {
  background-color: #f4f4f4;
  border-radius: 10px;
  padding: 50px 20px;
}
.modal__text-01 {
  font-weight: 700;
  text-align: left;
  display: inline-block;
}
.modal__text-01 span{
  font-weight: 700;
  color: #B51010;
}
.modal__text-02 {
  font-weight: 700;
  margin: 40px 0 30px;
}
.modal__text-03 {
  color: #B51010;
  font-weight: 700;
  margin: 40px 0 30px;
}
.modal__text-04 {
  font-weight: 700;
  margin-top: 30px;
}
.modal-address_confirm {
  display: flex;
  font-weight: 700;
  justify-content: center;
  flex-wrap: wrap;
  margin: 40px auto 20px;
}
.modal-address_confirm label {
  display: flex;
  align-items: center;
  gap: 0.5em;
  position: relative;
  cursor: pointer;
}
.modal-address_confirm label::before {
  width: 18px;
  height: 18px;
  border-radius: 3px;
  border: 2px solid #777;
  content: '';
}
.modal-address_confirm label:has(:checked)::after {
  position: absolute;
  top: 5px;
  left: 7px;
  transform: rotate(45deg);
  width: 5px;
  height: 10px;
  border: solid #B51010;
  border-width: 0 3px 3px 0;
  content: '';
}
.modal-address_confirm input {
  display: none;
}
.modal-button_wrapper {
  display: block;
}
.modal-address_confirm_button {
  width: 494px;
  display: block;
  background-color: #B51010;
  color: #FFF;
  font-weight: 700;
  border-radius: 4px;
  padding: 20px 0px;
  margin: 0 auto 40px;
  cursor: pointer;
}
.modal-address_confirm_button:disabled {
  width: 494px;
  display: block;
  background-color: #ccc;
  color: #FFF;
  font-weight: 700;
  border-radius: 4px;
  padding: 20px 0px;
  margin: 0 auto 40px;
  cursor: default;
}
.modal-button_back_wrapper {
  display: block;
  justify-content: space-between;
  margin: 0 auto;
}
.modal-address_correct_button, .modal-postcode_correct_button {
  width: 227px;
  color: #000;
  border: solid 2px #000;
  border-radius: 4px;
  font-weight: 700;
  padding: 18px 0;
  margin: 0 auto;
  display: block;
}
