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: 700px }
.image_box                       { text-align: left; margin: 0px auto; position: absolute; z-index: 5; top: 0px; left: 0px; width: 100%; height: 700px }
.image_box_01                         { margin-top: 0px; margin-bottom: 0px; z-index: 5; top: 0px; left: 0px; width: 100% }
.image_box_02                         { margin-top: 240px; margin-bottom: 0px; z-index: 5; width: 100% }
.image_box_03                           { background: url(../image/bg_top_01.png) repeat-x; margin-top: 0px; margin-bottom: 0px; position: absolute; z-index: 6; top: 0px; left: 0px; width: 100%; height: 700px }

.header_box                      { text-align: left; margin: 0px auto; position: relative; z-index: 10; top: 220px; left: 0px; width: 620px; height: 240px }
.header_box_01                        { display: none; }
.header_01_1                            { display: none }

.header_box_02                         { background: url(../image/bg_top_02.png) no-repeat; text-align: right; margin: 0px auto 0px auto; position: relative; width: 500px; height: 240px }
.header_02_1                              { padding-top: 40px; position: relative }
.header_box_03                      { display: none; }
.header_03_1                             { display: none; }
.header_menu                             { float: right; margin-left: 10px }
.header_box_04                      { text-align: right; float: right; position: relative; width: 120px; height: 240px }



.main_01                           { text-align: center; clear: both; padding: 0px 20px; position: relative; z-index: 20; width: 100% }
.main_01_box                          { text-align: center; margin-top: 20px; margin-bottom: 100px; margin-right: auto; margin-left: auto; position: relative; width: 580px; height: 500px }

.main_02                               { text-align: center; float: left; clear: both; 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_01                              { width: 200px }
.main_02_r_02                               { display: none; }
.main_02_r_03                              { width: 450px }

.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: 10px; 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: 780px; }
.table_width_101                { width: 100%; border:1px solid #d7d7d7; border-collapse:collapse; }
.table_width_102                { width: 100%; }

.td_width_01                { width: 280px; }
.td_width_02                { width: 500px; }
.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%;
}

.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;
}
