@charset "utf-8";
/*
フォントサイズはremで指定します。
"rem" will be used for font-size.
*/


.u_mat0 { margin-top:0; }
.u_mat5 { margin-top:5px; }
.u_mat10 { margin-top:10px; }
.u_mat20 { margin-top:20px; }
.u_mat30 { margin-top:30px; }
.u_mat40 { margin-top:40px; }
.u_mat50 { margin-top:50px; }

.u_mab0 { margin-bottom: 0; }
.u_mab5 { margin-bottom: 5px; }
.u_mab10 { margin-bottom: 10px; }
.u_mab15 { margin-bottom: 15px; }
.u_mab20 { margin-bottom: 20px; }
.u_mab25 { margin-bottom: 25px; }
.u_mab30 { margin-bottom: 30px; }
.u_mab40 { margin-bottom: 40px; }
.u_mab50 { margin-bottom: 50px; }
.u_mab60 { margin-bottom: 60px; }
.u_mab100 { margin-bottom: 100px; }

.u_ALcenter { text-align: center; }
.u_ALright { text-align: right; }
.u_ALleft { text-align: left; }
.u_ALtop { vertical-align: top; }
.u_ALmiddle { vertical-align: middle; }
.u_ALbottom { vertical-align: bottom; }

.u_float_left { float: left; }
.u_float_right { float: right; }

.u_red { color: #f12d35; }
.u_black { color: #000; }
.u_white { color: #FFF; }
.u_yellow { color: #f8e187; }
.u_bg_white { background-color: #FFF; }
.u_bg_blue { background-color: #4e4398; }
.u_bg_pink { background-color: #e186c6; }
.u_bg_gray, .disabled { background-color: #d8d8d8; }

.u_bold { font-weight: bold; }
.u_underline { text-decoration: underline; }
.u_strike { text-decoration: line-through; }
.u_fw_normal { font-weight: normal; }

.u_img_floatL { float: left; margin-right: 20px; }
.u_img_floatR { float: right; margin-left: 20px; }

.u_fs11 { font-size: 1.1rem; }
.u_fs12 { font-size: 1.2rem; }
.u_fs13 { font-size: 1.3rem; }
.u_fs15 { font-size: 1.5rem; }
.u_fs16 { font-size: 1.6rem; }
.u_fs17 { font-size: 1.7rem; }
.u_fs18 { font-size: 1.8rem; }
.u_fs19 { font-size: 1.9rem; }
.u_fs20 { font-size: 2.0rem; }
.u_fs21 { font-size: 2.1rem; }
.u_fs22 { font-size: 2.2rem; }
.u_fs23 { font-size: 2.23rem; }
.u_fs24 { font-size: 2.4rem; }

.u_w25 { width: 25%; }
.u_w60 { width: 60%; }
.u_w90 { width: 90%; }
.u_w100 { width: 100%; }

.u_indent_01 { text-indent: -1rem; }
.u_indent_02 { text-indent: -5.7em; padding-left: 5.7em;}

.u_border_radius {
	-webkit-border-radius: 4px;
  	-moz-border-radius: 4px;
  	border-radius: 4px;
}

.u_padl25 { padding-left: 25px;}

.u_inline { display: inline-block; }

.u_whitespace { white-space: pre; }

.u_disable { pointer-events: none; }

.red    { color:#ff0000; }
.blue   { color:#0000ff; }
.orange { color:#FF2E00;line-height:1em; } /* ff6600 */
.pink   { color:#ff0066; }
.black  { color:#ffffff; }
.green  { color:#32C102; }
.akabeni { color:#C6001C;}

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

/*----------------------------------------------
	全ページ共通
---------------------------------------------*/
#wrap{box-sizing:border-box;max-width:1060px;margin-left:auto;margin-right:auto;width:96%;background:#FFF;padding-left:30px;padding-right:30px;}
#wrap{background:#FFF;}

.sitename {
	width:1000px;
 	text-align:center;
	padding:25px 0px 15px 0px;
/*    background-color:#FFC472;
    background-color:#c69ee5;  */
    background-color:#e6e6e6;
}

.topTitle {
	font-size:1.9rem;
 	text-align:center;
	font-weight:bold;
	padding-top:0px;
}

.top_message {
	font-size: 0.9em;
	padding:0px 0px 16px 36px;
	line-height:130%;
}

.top_area{
	margin:0 auto;
	width:1000px;
	background:rgb(255,255,255);
}
.middle_area{
	margin:0 auto;
	padding-left:16px;
	padding-right:16px;
	width:840px;
	background:rgb(255,255,255);
	-webkit-border-radius: 0px 0px 4px 4px;
  	-moz-border-radius:  0px 0px 4px 4px;
  	border-radius:  0px 0px 4px 4px;
}

/* 進行バー */
table.progressTable {
    margin : 0 auto;
}

.this_time {
    padding-top:3px;
    font-weight:bold;
    text-align:center;
    font-size:15px;
    color:#ff0000;
}
.next_step {
    padding-top:3px;
/*    background-color: #f5f5f5; */
    font-weight:normal;
    text-align:center;
    font-size:12px;
}

.indent {
    margin:4px 0px 6px 24px;
}

/*----------------------------------------------
	登録ページ
---------------------------------------------*/
.sub_title {
    font-size:16px;
    font-weight:bold;
    margin-left:8px; /* 16 */
    padding:2px 10px;
    border-left:#D2AA1E solid 8px;  /* #0E3C7f */
}

.itemr {
    width:26%;
    padding-right:8px; 
    padding-left:8px; 
    background-color: #F2EFE4;
    font-weight:700;
    border-bottom:1px solid #333; 
    border-left:1px solid #333; 
}
.itemr_top {
    width:26%;
    padding-right:8px; 
    padding-left:8px; 
    background-color: #F2EFE4;
    font-weight:700;
    border-top:1px solid #333;
    border-bottom:1px solid #333; 
    border-left:1px solid #333; 
}
.itemr26 {
    width:26%;
    padding-right:8px; 
    padding-left:8px; 
    background-color: #F2EFE4;
    font-weight:700;
    border-top:1px solid #333; 
    border-bottom:1px solid #333; 
    border-left:1px solid #333; 
}
.itemr32 {
    width:32%;
    padding-right:8px; 
    padding-left:8px; 
    background-color: #F2EFE4;
    font-weight:700;
    border-top:1px solid #333; 
    border-bottom:1px solid #333; 
    border-left:1px solid #333; 
}

.value {
    padding:6px 0px 6px 6px;
    color:#323232;
    border-bottom:1px solid #333;
    border-right:1px solid #333; 
    border-left:1px solid #333;/
}
.value_top {
    padding:6px 0px 6px 6px;
    padding-left:6px;
    color:#323232;
    border-top:1px solid #333;
    border-bottom:1px solid #333; 
    border-right:1px solid #333; 
    border-left:1px solid #333; 
}
.value_left {
    padding:6px 0px 6px 6px;
    color:#323232;
    border-top:1px solid #333;
    border-bottom:1px solid #333;
    border-left:1px solid #333;/
}
.value_middle {
    padding:6px 0px 6px 6px;
    color:#323232;
    border-bottom:1px solid #333;
    border-left:1px solid #333;/
}

.hosoku {
	padding-top:3px;
	padding-bottom:1px;
	font-size:0.8rem;
	color:#FF2E00;
	line-height:125%;
}
.hosoku_narrow {
	padding-top:3px;
	padding-bottom:1px;
	font-size:0.75rem;
}
.hosoku_larger {
	padding-top:3px;
	padding-bottom:1px;
	font-size:0.85rem;
	color:#FF2E00;
	line-height:125%;
}
.ex {
	line-height:110%;
	padding-left:6px;
	padding-bottom:2px;
	font-size:0.8rem;
}
.sweetsHeader {
	padding-top:3px;
	padding-bottom:6px;
	line-height:135%;
}
.sweetsBody {
	padding:9px 0px 9px 8px;
	font-size:0.96rem;
	line-height:130%;
	border:1px dotted #333;
	border-radius: 6px;

}
.sweetsFooter {
	padding-top:6px;
	padding-bottom:15px;
	font-size:0.90rem;
	line-height:120%;
}
.onlineworkshop {
	padding-top:3px;
	padding-bottom:1px;
	font-size:0.9rem;
	line-height:125%;
	color:#FF2E00;
}
.payment_method {
	padding-top:3px;
	padding-bottom:1px;
	font-size:0.9rem;
	line-height:125%;
	color:#ff0000;
}
.required {
    color:#ff0000;
}
/* エラー対応 */
.error {
    font-weight:bold;
    color:#ffffff;
    font-size:small;
    width:91%;
    padding: 0px 5px 0px 5px;
    background: #ff2929;
    border-radius: 4px;
}


/* 料金表 */
.fee_area {
    padding:10px 0px 32px 0px;
/*    display:flex;
    justify-content: flex-end; */
}
.fee {
    margin:0 auto;
/*    text-align:center; */
}
table.fee {
    border-spacing:1px;
    background:#333;
}

.fee_tab_head_l {
    background:#008080;
    color:#fff;
    text-align:center;
    font-weight:bold;
    LINE-HEIGHT: 1.3;
    padding:2px 4px;
}
.fee_tab_head_r {
    background:#fabe25;
    color:#333;
    text-align:center;
    font-weight:bold;
    LINE-HEIGHT: 1.3;
    padding:2px 4px;
}

.fee_tab_item {
    background:#fff;
    padding-right:6px;
    text-align:right;
    padding:2px 4px;
}
.fee_tab_itemLeft {
    background:#fff;
    text-align:left;
    padding:2px 10px;
    line-height: 1.4;
}
.fee_tab_value {
    text-align:center;
    background:#fff;
    padding:2px 4px;
    line-height: 1.4;
}
del .redStrike {
  text-decoration: line-through;
  text-decoration-color: red;
}

/* PECS */
.pecsInformation {
    line-height:1.3;
    font-size:0.9em;"
}


/*----------------------------------------------
	確認ページ
---------------------------------------------*/
.indent_cfm {
    margin:4px 0px 6px 24px;
}

.sub_title_cfm {
   font-size:16px;
/*    margin-left:16px;  */
    margin-left:8px;
    padding:2px 10px;
    border-left:#8C8080 solid 8px;
}

/*----------------------------------------------
	完了ページ
---------------------------------------------*/
.itemr-complete {
    width:26%;
    padding-left:8px; 
    background-color: #e5e5e5; 
}

.completeBox {
	text-align:left;
	width:644px; 
	margin-left:auto;margin-right:auto;
	margin-top:5px;
	margin-bottom:60px;
	background-color: #F5F5F5;
	padding: 12px 12px 10px 12px;
        line-height:130%;

        filter: alpha(opacity=85);
        -moz-opacity:0.85;
        opacity:0.85;
	border-radius: 5px;
}

.office {
	text-align:left;
	width:480px; 
	margin-top:5px;
	margin-left:80px;
	margin-bottom:15px;
        line-height:120%;
	font-size: 0.9em;
}

.re_entry {
	text-align:right;
	width:644px; 
	margin-left:auto;margin-right:auto;
	margin-top:5px;
	margin-bottom:15px;
        line-height:140%;
	font-size: 0.95em;
}

/* Form ***************************** */
input[type="text"],
input[type="password"] {
    height:1.8em;
}

select {
    height:1.3em;
}

button,
input[type="button"],
input[type="submit"] {

	padding: 5px 14px;  	/*ボタン内の余白*/
	margin-bottom: 20px;
	border-radius: 5px;	/*角丸のサイズ*/
	background: #e5e5e5;	/*背景色（古いブラウザだとここの色のみが出ます）*/
	background: -webkit-linear-gradient(#FFF, #e5e5e5);	/*グラデーション*/
	background: linear-gradient(#FFF, #e5e5e5);			/*同上*/
	font-size: 1.1em;	/*文字サイズ*/
	font-weight: bold;
/*	letter-spacing: 0.1em;	*/ /*文字間隔を少し広くする設定*/
	border: 1px solid #999;	/*枠線の幅、線種、色*/
	cursor:pointer ; 

}
/*ボタンのマウスオン時の設定*/
input[type="button"]:hover,
input[type="submit"]:hover {
	background: #FFF;	/*背景色（古いブラウザだとここの色のみが出ます）*/
	background: -webkit-linear-gradient(#e5e5e5, #FFF);	/*グラデーション*/
	background: linear-gradient(#e5e5e5, #FFF);			/*同上*/
}



/*----------------------------------------------
	決済ページ
---------------------------------------------*/
table.settlement {
    margin : 0 auto;

}
.MessageRed    {
	color:#ff0000;
	text-align:center;
	font-weight:bold;
	font-size: 1.2em;
        padding-top: 8px;
        padding-bottom: 18px;
}
.MessageBox {  /* Card page */
	font-size: 0.8em;
	line-height: 130%;
}
.top_message_card {
	font-size: 0.9em;
	padding:4px 0px 16px 46px;
}

.settlement td.itemcard { /* Card page */
    font-weight:bold;
    text-align:right;
    padding-right:8px;
    border-top:1px solid #333; 
    border-left:1px solid #333; 
    background-color: #F2EFE4; /* #e5e5e5 */

}
.settlement td.itemcard_bottom {
    font-weight:bold;
    background-color: #F2EFE4; /* #e5e5e5 */
    text-align:right;
    padding-right:8px;
    border-top:1px solid #333; 
    border-bottom:1px solid #333; 
    border-left:1px solid #333; 
}
.settlement td.valuecard {  /* Card page */
    text-align:left;
    padding:4px 0px 4px 8px;
    border-top:1px solid #333; 
    border-right:1px solid #333; 
    border-left:1px solid #333; 
}

.settlement td.valueHighcard {  /* Card page */
    font-size: 1.1em;
    border-bottom :1px solid #fff;
    text-align:left;
    padding:4px 0px 4px 8px;
    border-top:1px solid #333; 
    border-right:1px solid #333; 
    border-left:1px solid #333; 
}
.settlement td.valuecard_bottom {  
    text-align:left;
    padding-top:4px;
    padding-left:8px;
    border-top:1px solid #333; 
    border-bottom:1px solid #333; 
    border-right:1px solid #333; 
    border-left:1px solid #333; 
}
.settlement td.valuecard_notop { 
    text-align:left;
    padding:4px 0px 4px 8px;
    border-top:1px solid #fff; 
    border-right:1px solid #333; 
    border-left:1px solid #333; 
}

.messageSecurity { 
	color:#FF2E00;
	font-size: 0.8rem;
	line-height:120%;
        padding-top:4px;
        padding-buttom:6px;
}
.txt_m {
	font-size: 1.4rem;
	line-height:120%;
}
input.cardnumber {
	width: 55px;
}
input[type="password"] {
	width: 60px;
}


/*----------------------------------------------
	決済エラーページ
---------------------------------------------*/
.settlement_error {
	text-align:center;
	width:400px; 
	margin-left:auto;margin-right:auto;
	margin-top:5px;
	margin-bottom:60px;
	background-color: #F5F5F5;
	padding: 12px 0px 10px 0px;

        filter: alpha(opacity=85);
        -moz-opacity:0.85;
        opacity:0.85;
	border-radius: 5px;
}
.errorTitle {
	text-align:center;
	font-size:18px;
        color: #ff0000;
}
.information {
	margin-left:16px;
	margin-right:16px;
	padding: 5px 10px 5px 10px;
	border: 1px dotted #333;	/*枠線の幅、線種、色*/
	font-size: 0.9em;
	line-height:1.2;
}

.error_footer {
 	text-align:center;
	padding:25px 0px 15px 0px;
}
/*
h1{font-size:2.2rem;background-color:#FFC472;color:#FFF;padding:0.5em 1em;background-image:url(./images/hline_l.png),url(./images/hline_r.png);background-position:left top,right top;background-repeat:no-repeat,no-repeat;background-size:1.25rem 100%,1.25rem 100%;}
*/