html            { width: 100%; height: 100% }
body                  { width: 100%; height: 100%; font-family: "Lucida Grande", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; text-decoration: none; margin: 0px; padding: 0px; min-width: 620px; overflow-x: hidden; url: text-align: center }

#imageContainer     { margin: 0px; width: 100%; overflow: hidden; visibility: visible; display: block }
#imageContainer img   { position: fixed; top: 0px; left: 0; width: 100%; display: none }
.fitimg  { min-height: 100vh; min-width: 1050px }
.overlay   { background: url(../image/icon/bg_all_2.png) repeat; position: fixed; z-index: 1; top: 0; left: 0; width: 100%; height: 100vh; }

.hidden        { display: none; }
.main_hidden        { display: none; }
.sp_hidden        { }
/* クレジット決済注意・後で非表示 */
.hidden_after         { display: none; }

.header                              { text-align: center; clear: both; margin-top: 120px; position: relative; z-index: 5; width: 100%; height: 500px }
.header_img_01                      { background: url(../image/pict/pic_main_01.jpg) no-repeat center top; text-align: center; margin-right: auto; margin-left: auto; position: absolute; z-index: 5; top: 180px; left: 0px; width: 100%; height: 300px; visibility: visible; background-size: cover ; cover: -moz-background-size: cover  }
.header_img_02                       { background: url(../image/bg_main_11.png) repeat-x left top; text-align: center; margin-right: auto; margin-left: auto; position: absolute; z-index: 10; top: 0px; left: 0px; width: 100%; height: 500px }


.header_box                       { text-align: left; margin: 0px auto; position: relative; z-index: 10; top: 0px; left: 0px; width: 620px; height: 180px }
.header_box_01                       { text-align: left; float: left; margin-left: 0px; position: relative; z-index: 20; width: 580px; height: 180px }
.header_01_1                            { display: none; }
.header_01_2                              { text-align: center; clear: both; margin-top: 35px; margin-right: auto; margin-left: auto; position: relative; width: 620px }
.header_box_02                       { display: none; }
.header_02_1                             { text-align: right; margin-top: 120px; position: relative; }
.header_menu                             { float: right; margin-left: 10px }



.main_01                           { display: none; }
.main_01_box                          { text-align: center; margin-top: 20px; margin-right: auto; margin-left: auto; position: relative; width: 580px; height: 500px }

.main_02                                 { text-align: center; float: left; clear: both; margin-top: 50px; padding-right: 20px; padding-bottom: 100px; padding-left: 20px; position: relative; width: 100% }
.main_02_box                                    { text-align: center; margin: 0px auto; position: relative; width: 580px }

.main_02_left                              { display: none; }
.main_02_l_01                              { background: url(../image/bg_main_101.gif) no-repeat left top; padding: 15px; width: 310px }
.main_02_l_02                               { background: url(../image/bg_main_102.gif) no-repeat left bottom; padding: 15px; width: 310px }
.main_02_l_03                               { float: left; margin-bottom: 10px; width: 120px }
.main_02_l_04                               { text-align: right; float: left; width: 160px }
.main_02_l_05                                  { background: url(../image/icon/icon_line_01.png) repeat-x left top; text-align: center; clear: both; padding-top: 15px; position: relative; width: 280px }
.main_02_l_06                                 { text-align: left; padding-top: 40px; padding-bottom: 20px; width: 310px }
.left_menu                             { clear: both; }

.main_02_right                                { text-align: left; margin-right: auto; margin-left: auto; padding-bottom: 0px; position: relative; width: 580px }
.main_02_r_copy                                  { background: url(../image/icon/icon_line_02.png) no-repeat; text-align: left; margin-bottom: 30px; padding-top: 7px; padding-left: 20px; width: 580px; height: 60px }
.main_02_r_01                               { margin-bottom: 100px; width: 580px }
.main_02_r_101                                   { text-align: center; margin-right: auto; margin-left: auto; padding-bottom: 60px; width: 100% }
.main_02_r_102                                 { width: 580px }
.main_02_r_103                                  { padding-top: 10px; padding-bottom: 10px; border-bottom: 1px solid #e3e3e3; width: 580px }
.main_02_r_104                                  { padding-top: 10px; padding-bottom: 10px; width: 580px }

.main_03                              { background: url(../image/bg_main_01.gif) repeat; text-align: center; float: left; clear: both; padding-right: 20px; padding-bottom: 60px; padding-left: 20px; position: relative; width: 100% }
.main_03_ex                            { background: url(../image/bg_main_02.gif) repeat-x; text-align: center; clear: both; position: relative; width: 100%; height: 50px }
.main_03_box                                   { text-align: center; margin: 0px auto; position: relative; width: 580px }
.main_03_1                                    { text-align: center; margin: 0px auto; padding-bottom: 60px; position: relative; width: 580px }
.main_03_2                                      { text-align: left; margin: 0px auto; position: relative; width: 530px }
.main_03_3                                    { text-align: left; margin: 0px auto; position: relative; width: 530px }
.main_03_4_copy                                   { background: url(../image/icon/icon_line_04.png) no-repeat; text-align: left; margin-right: auto; margin-left: auto; padding-top: 7px; padding-left: 20px; width: 530px; height: 60px }
.main_03_4_copy_l                                  { text-align: left; float: left; width: 310px }
.main_03_4_copy_r                                   { text-align: right; float: right; padding-top: 8px; width: 200px }
.main_03_4                                    { text-align: left; margin: 0px auto; padding-bottom: 100px; position: relative; width: 530px }


.footer                    { background: url(../image/bg_foot_01.gif) repeat-x; text-align: center; clear: both; margin-right: auto; margin-left: auto; position: relative; z-index: 10; width: 100%; height: 500px }
.footbox                { background: url(../image/bg_foot_02_sp.gif) no-repeat center top; text-align: center; margin: 0 auto; position: relative; width: 100%; height: 500px }
.foot_01                             { margin-right: auto; margin-left: auto; padding-top: 180px; position: relative; width: 580px; height: 150px }
.foot_02                               { text-align: center; clear: both; margin-top: 150px; margin-right: auto; margin-left: auto; position: relative; width: 580px }
.foot_02_1                            { text-align: left; margin: 0px auto; padding-left: 80px; position: relative; width: 580px }
.foot_03                         { text-align: center; margin-top: 20px; position: relative; }
.foot_04                               { text-align: right; position: absolute; top: 320px; left: 1100px; width: 60px; height: 140px; ext-align: right  }
.foot_04_1        { padding-top: 20px }

.sns_box                               { text-align: right; padding-right: 20px; position: fixed; z-index: 100; right: 0px; bottom: 30px; width: 80px; }


.bg_contents_01                { width: 1000px; height: 560px }

.img_size_00                              { width: 100%; height: auto }
.img_size_01                              { width: 400px; height: 100px }
.img_size_cart_01                              { width: 220px; height: 220px }

.table_width_01                 { width: 580px; border-collapse: collapse }
.table_width_02                  { border: solid 1px #d7d7d7; width: 580px; border-collapse: collapse  }
.table_width_03                { width: 580px; }
.table_width_101                { width: 100%; border:1px solid #d7d7d7; border-collapse:collapse; }
.table_width_102                { width: 100%; }

.td_align_01                { text-align: left; width: 580px; }

.td_width_01                  { background-color: #d5d5d5; padding: 10px 10px 8px; width: 580px; border-collapse: collapse; display: block; }
.td_width_02                    { padding: 15px 10px 40px; width: 580px; border-collapse: collapse; display: block }
.td_width_03                    { padding: 10px; width: 200px; height: 40px }
.td_width_04                   { padding: 10px; width: 380px; height: 40px }
.td_width_05                  { width: 580px; height: 40px }

.td_width_06                  { padding-top: 10px; padding-bottom: 10px; border: solid 1px #d7d7d7; width: 40px; border-collapse: collapse  }
.td_width_07                   { padding: 10px; border: solid 1px #d7d7d7; width: 330px; border-collapse: collapse  }
.td_width_08                   { padding: 10px; border: solid 1px #d7d7d7; width: 120px; border-collapse: collapse  }
.td_width_09                   { padding: 10px; border: solid 1px #d7d7d7; width: 150px; border-collapse: collapse  }
.td_width_10                   { padding: 10px; border: solid 1px #d7d7d7; width: 430px; border-collapse: collapse  }

.td_width_11                   { padding-right: 10px; padding-left: 10px; border: solid 1px #d7d7d7; width: 120px; height: 35px; border-collapse: collapse  }
.td_width_12                   { padding-right: 10px; padding-left: 10px; border: solid 1px #d7d7d7; width: 270px; height: 35px; border-collapse: collapse  }
.td_width_13                   { padding-right: 10px; padding-left: 10px; border: solid 1px #d7d7d7; width: 100px; height: 35px; border-collapse: collapse  }
.td_width_14                   { padding-right: 10px; padding-left: 10px; border: solid 1px #d7d7d7; width: 170px; height: 35px; border-collapse: collapse  }
.td_width_15                  { padding: 10px; border: solid 1px #d7d7d7; width: 370px; border-collapse: collapse  }

.td_width_16                  { width: 780px; padding: 10px 10px 8px; }
.td_width_51                   { padding: 10px; border: solid 1px #d7d7d7; width: 120px; border-collapse: collapse  }
.td_width_52                   { padding: 10px; border: solid 1px #d7d7d7; width: 240px; border-collapse: collapse  }
.td_width_53                   { padding: 10px; border: solid 1px #d7d7d7; width: 100px; border-collapse: collapse  }
.td_width_54                   { display: none; }
.td_width_101                   { background-color: #f5f5f5; padding: 5px 10px; border: solid 1px #d7d7d7; width: 33%; border-collapse: collapse  }
.td_width_102                   { padding: 5px 10px; border: solid 1px #d7d7d7; width: 33%; border-collapse: collapse  }
.td_width_103                   { background-color: #fbfbfb; padding: 5px 10px; border: solid 1px #d7d7d7; width: 33%; border-collapse: collapse  }
.osusume_td_01                 { }
.osusume_td_02                 { }




.list-item::after{
   content: '';
        display:block;
        width:0;
        margin: 2px auto 0;
        border-bottom: 2px solid  #1CD7F7;
        transition: width 0.3s ease-in-out;
}

.list-item:hover::after{
  width: 100%;
}



.mainimage img                 { text-align: center; margin: 0px 0px 20px }
.thumbnails                { text-align: center; width: 100%; margin: 0 auto; }
.thumbnails img                    { margin: 0px 5px; width: 80px; height: auto; cursor: pointer }


.col_3{
	width: 580px;
	display: flex;
	margin-left: auto;
	margin-right: auto;
	flex-wrap: wrap;
}
.col_3 > div{
	width: 220px;
	margin-right: 35px; margin-left: 35px;
	margin-bottom: 80px;
	position: relative;
	overflow: hidden;
}





