@charset "UTF-8";

.only-sp {
  display: none;
}

html.safari body {
  -webkit-font-smoothing: antialiased;
}

body {
  overflow-y: scroll;
}

#hidden_layer {
  z-index: 10000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
  display: block;
}

h3 {
  font-size: 246.154%;
  font-family: Optima LT W01 Roman;
  color: #ffcb00;
  text-align: center;
  letter-spacing: .1em;
}

.cut_wrapper {
  position: relative;
}

.cut_wrapper img {
  width: 100%;
  min-width: 1100px;
}

.cut_wrapper .cut_shadow_box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lat_wrapper .lat_h_table {
  display: table;
}

.lat_wrapper .lat_h_table .lat_h_cell_l {
  display: table-cell;
  background: url(../img/pc/lat_lt.png) no-repeat top center;
  width: 32px;
  height: 32px;
}

.lat_wrapper .lat_h_table .lat_h_cell_c {
  display: table-cell;
  background: url(../img/pc/lat_t.png) repeat-x top center;
}

.lat_wrapper .lat_h_table .lat_h_cell_r {
  display: table-cell;
  background: url(../img/pc/lat_rt.png) no-repeat top center;
  width: 32px;
  height: 32px;
}

.lat_wrapper .lat_b_table {
  display: table;
}

.lat_wrapper .lat_b_table .lat_b_cell_l {
  display: table-cell;
  background: url(../img/pc/lat_l.png) repeat-y top center;
  width: 32px;
}

.lat_wrapper .lat_b_table .lat_b_cell_c {
  display: table-cell;
}

.lat_wrapper .lat_b_table .lat_b_cell_r {
  display: table-cell;
  background: url(../img/pc/lat_r.png) repeat-y top center;
  width: 32px;
}

.lat_wrapper .lat_f_table {
  display: table;
}

.lat_wrapper .lat_f_table .lat_f_cell_l {
  display: table-cell;
  background: url(../img/pc/lat_lb.png) no-repeat top center;
  width: 32px;
  height: 32px;
}

.lat_wrapper .lat_f_table .lat_f_cell_c {
  display: table-cell;
  background: url(../img/pc/lat_b.png) repeat-x top center;
}

.lat_wrapper .lat_f_table .lat_f_cell_r {
  display: table-cell;
  background: url(../img/pc/lat_rb.png) no-repeat top center;
  width: 32px;
  height: 32px;
}

.looks_scene {
  font-size: 138.462%;
  font-family: HelveticaNeue,Helvetica,sans-serif;
  color: #fff;
  padding-bottom: 14px;
}

.looks_item_name_en {
  font-size: 276.923%;
  font-family: HelveticaNeue,Helvetica,sans-serif;
  color: #ffcb00;
  padding-bottom: 10px;
}

.looks_item_name_ja {
  font-size: 107.692%;
  color: #ffcb00;
}

.looks_item_note p {
  font-size: 107.692%;
  color: #fff;
  line-height: 1.8em;
}

.credit_list {
  list-style: none;
}

.credit_list li {
  padding-bottom: 12px;
}

a.credit_link {
  display: inline-block;
  color: #ffcb00;
  font-size: 115.385%;
  text-decoration: none;
  padding-bottom: 1px;
  border-bottom: 1px solid #ffcb00;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

a.credit_link:hover {
  opacity: .6;
  -ms-filter: "alpha(opacity=60)";
  filter: alpha(opacity=60);
}

.looks_copy {
  font-size: 84.615%;
  font-family: HelveticaNeue,Helvetica,sans-serif;
  color: #fff;
}

.looks_img_line {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.looks_img_line_shadow {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.intro_line {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#opening_wrapper {
  z-index: 9000;
  position: relative;
  display: table;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

#opening_wrapper.disable {
  display: none;
}

#opening_wrapper #opening_layer {
  z-index: 100;
  position: fixed;
  background-color: #000;
  width: 100%;
  height: 100%;
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
}

#opening_wrapper #opening_bg {
  position: absolute;
  width: 100%;
  height: 100%;
}

#opening_wrapper #opening_bg .opening_bg_box {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 90;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  top: 0;
  left: 0;
  text-align: center;
}

#opening_wrapper #opening_bg .opening_bg_box.active {
  z-index: 100;
}

#opening_wrapper #opening_bg .opening_bg_box .concept_img {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#opening_wrapper #opening_bg .opening_bg_box .range_size {
  position: absolute;
  z-index: 200;
}

#opening_wrapper #opening_bg .opening_bg_box .anm_obj {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
}

#opening_wrapper #opening_bg .opening_bg_box .op_cp {
  color: #fff;
  font-size: 61.538%;
  font-family: HelveticaNeue,Helvetica,sans-serif;
}

#opening_wrapper #opening_bg img {
  z-index: 150;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#opening_wrapper #opening_bg img.active {
  -webkit-transition: -webkit-transform 17s ease;
  transition: transform 17s ease;
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

#header_wrapper {
  z-index: 9500;
  position: relative;
  width: 100%;
  border-top: 2px solid #ffcb00;
  background-color: #000;
}

#header_wrapper.menu_fixed {
  position: fixed;
  top: 0;
  left: 0;
}

#header_wrapper #header_box {
  width: 800px;
  margin: 0 auto;
}

#header_wrapper #header_box #header_menu_list {
  display: table;
}

#header_wrapper #header_box #header_menu_list a.header_menu_cell {
  display: table-cell;
  width: 160px;
  height: 45px;
  text-align: center;
  vertical-align: middle;
  color: #ffcb00;
  text-decoration: none;
  font-size: 115.385%;
  font-family: Optima LT W01 Roman;
  position: relative;
  overflow: hidden;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

#header_wrapper #header_box #header_menu_list a.header_menu_cell:hover,
#header_wrapper #header_box #header_menu_list a.header_menu_cell.active,
#header_wrapper #header_box #header_menu_list a.header_menu_cell.fix_active {
  color: #000;
}

#header_wrapper #header_box #header_menu_list a.header_menu_cell:hover .bg,
#header_wrapper #header_box #header_menu_list a.header_menu_cell.active .bg,
#header_wrapper #header_box #header_menu_list a.header_menu_cell.fix_active .bg {
  top: 0;
}

#header_wrapper #header_box #header_menu_list a.header_menu_cell .snt {
  z-index: 1;
  position: relative;
}

#header_wrapper #header_box #header_menu_list a.header_menu_cell .bg {
  z-index: 0;
  position: absolute;
  top: -45px;
  left: 0;
  width: 100%;
  height: 45px;
  background-color: #ffcb00;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
}

#body_wrapper.lock {
  position: fixed;
}

#intro_wrapper {
  width: 740px;
  margin: 0 auto;
  padding-top: 96px;
  padding-bottom: 80px;
}

#intro_wrapper #intro_catch {
  padding-top: 98px;
  padding-bottom: 76px;
}

#intro_wrapper #intro_note {
  font-size: 123.077%;
  line-height: 2.1em;
  color: #fff;
}

#scenes_wrapper {
  padding-top: 20px;
  background: url(../img/pc/bg_1.jpg) no-repeat top center;
  -webkit-background-size: 100% 100%;
  background-size: 100%;
  min-width: 1100px;
}

#scenes_wrapper #scenes_looks_table {
  width: 1100px;
  margin: 0 auto;
  padding-top: 170px;
}

#scenes_wrapper #scenes_looks_table .lat_h_cell_c,
#scenes_wrapper #scenes_looks_table .lat_b_cell_c,
#scenes_wrapper #scenes_looks_table .lat_f_cell_c {
  width: 1020px;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl {
  display: table;
  width: 1020px;
  background-color: #000;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell {
  position: relative;
  display: table-cell;
  vertical-align: top;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_left {
  width: 560px;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_left .looks_1_img {
  position: absolute;
  bottom: 0;
  left: -46px;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_left .looks_1_img img {
  vertical-align: bottom;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_right {
  width: 458px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 60px;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_right .looks_1_title_box {
  padding-top: 100px;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_right .looks_1_note_box {
  padding-top: 58px;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_right .looks_1_credit_box {
  padding-top: 13px;
}

#scenes_wrapper #scenes_looks_table #looks_1_tbl .looks_1_cell.looks_1_right .looks_1_copy_box {
  text-align: right;
  padding-top: 20px;
  padding-bottom: 20px;
}

#scenes_wrapper #scenes_acce_table {
  display: table;
  width: 1020px;
  margin: 0 auto;
  padding-top: 60px;
}

#scenes_wrapper #scenes_acce_table #scenes_acce_cell_l,
#scenes_wrapper #scenes_acce_table #scenes_acce_cell_r {
  display: table-cell;
  width: 510px;
  text-align: center;
  vertical-align: top;
}

#scenes_wrapper #scenes_acce_table #scenes_acce_cell_l {
  padding-top: 100px;
}

#scenes_wrapper #scenes_acce_table .acce_table {
  display: inline-block;
}

#scenes_wrapper #scenes_acce_table .acce_table .lat_h_cell_c,
#scenes_wrapper #scenes_acce_table .acce_table .lat_b_cell_c,
#scenes_wrapper #scenes_acce_table .acce_table .lat_f_cell_c {
  width: 300px;
}

#scenes_wrapper #scenes_acce_table .acce_table .lat_b_cell_c img {
  vertical-align: bottom;
}

#scenes_wrapper #scenes_acce_table .acce_copy {
  padding-top: 12px;
}

#scenes_wrapper #scenes_acce_table .acce_note_box {
  padding-top: 40px;
}

#scenes_wrapper #scenes_acce_table .acce_note_box .looks_item_name_en {
  padding-bottom: 20px;
}

#scenes_wrapper #scenes_acce_table .acce_note_box .looks_item_name_ja {
  padding-bottom: 20px;
}

#scenes2_wrapper {
  background: url(../img/pc/bg_2.jpg) no-repeat top center;
  -webkit-background-size: 140% 140%;
  background-size: 140%;
  background-position: -273px 220px;
  min-width: 1100px;
}

#scenes2_wrapper #looks_2_tbl {
  display: table;
  width: 1100px;
  margin: 0 auto;
  padding-top: 90px;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell {
  position: relative;
  display: table-cell;
  vertical-align: top;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_left {
  width: 700px;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_left .looks_2_img {
  position: absolute;
  bottom: 0;
  left: -170px;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_left .looks_2_img img {
  vertical-align: bottom;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_right {
  width: 398px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 60px;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_right .looks_2_title_box {
  padding-top: 100px;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_right .looks_2_note_box {
  padding-top: 48px;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_right .looks_2_credit_box {
  padding-top: 13px;
  padding-bottom: 60px;
}

#scenes2_wrapper #looks_2_tbl .looks_2_cell.looks_2_right .looks_2_copy_box {
  text-align: right;
  padding-top: 20px;
  padding-bottom: 20px;
}

#scenes3_wrapper {
  background: url(../img/pc/bg_3.jpg) no-repeat top center;
  -webkit-background-size: 140% 140%;
  background-size: 140%;
  background-position: -273px 0;
  min-width: 1100px;
}

#scenes3_wrapper #looks_3_tbl {
  display: table;
  width: 1100px;
  margin: 0 auto;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell {
  position: relative;
  display: table-cell;
  vertical-align: top;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell.looks_3_right {
  width: 728px;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell.looks_3_right .looks_3_img {
  position: absolute;
  top: 0;
  left: -90px;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell.looks_3_left {
  width: 370px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell.looks_3_left .looks_3_title_box {
  padding-top: 150px;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell.looks_3_left .looks_3_note_box {
  padding-top: 48px;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell.looks_3_left .looks_3_credit_box {
  padding-top: 13px;
  padding-bottom: 140px;
}

#scenes3_wrapper #looks_3_tbl .looks_3_cell.looks_3_left .looks_3_copy_box {
  text-align: right;
  padding-top: 20px;
  padding-bottom: 20px;
}

.cut_3_box {
  margin-top: -100px;
  position: relative;
  z-index: 100;
}

#story_wrapper {
  background: url(../img/pc/bg_4.jpg) no-repeat top center;
  -webkit-background-size: auto 112%;
  background-size: auto 112%;
  min-width: 1100px;
  padding-top: 40px;
  text-align: center;
  color: #fff;
}

#story_wrapper #story_box {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
}

#story_wrapper h3 {
  margin-top: 140px;
}

#story_wrapper #story_note {
  padding-top: 60px;
  font-size: 123.077%;
  line-height: 2em;
}

#story_wrapper h4 {
  font-size: 184.615%;
  font-family: HelveticaNeue,Helvetica,sans-serif;
  padding-top: 46px;
}

#story_wrapper #story_cast_list {
  list-style: none;
  padding-top: 36px;
  padding-bottom: 70px;
}

#story_wrapper #story_cast_list li {
  display: inline-block;
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
}

#story_wrapper #story_cast_list li:nth-child(2n) {
  padding: 0 48px;
}

#story_wrapper #story_cast_list li .story_cast_name {
  font-size: 153.846%;
  padding-top: 20px;
}

#story_wrapper #story_cast_list li .story_cast_char {
  font-size: 92.308%;
  padding-top: 10px;
}

#location_wrapper {
  padding-top: 40px;
  padding-bottom: 54px;
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
}

#location_wrapper #location_box {
  padding-top: 50px;
  text-align: center;
  color: #fff;
}

#location_wrapper #location_box #location_name {
  font-size: 184.615%;
}

#location_wrapper #location_box #location_addr {
  padding-top: 24px;
  font-size: 123.077%;
  line-height: 1.8;
}

#location_wrapper #location_box #location_map_box {
  padding-top: 40px;
  display: table;
  width: 200px;
  margin: 0 auto;
}

#location_wrapper #location_box #location_map_box a {
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

#location_wrapper #location_box #location_map_box a:hover {
  opacity: .6;
  -ms-filter: "alpha(opacity=60)";
  filter: alpha(opacity=60);
}

@-moz-document url-prefix()  {
  #location_map_box a {
    padding-top: 2px;
  }
}

#allcast_wrapper {
  background: url(../img/pc/bg_5.jpg) no-repeat top center;
  -webkit-background-size: cover;
  background-size: cover;
  min-width: 1100px;
}

#allcast_wrapper #allcast_box {
  padding-top: 260px;
  color: #000;
  text-align: center;
}

#allcast_wrapper #allcast_box .allcast_line {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
}

#allcast_wrapper #allcast_box #allcast_star {
  font-size: 138.462%;
}

#allcast_wrapper #allcast_box #allcast_star_by {
  padding-top: 52px;
  font-size: 184.615%;
  line-height: 2.1em;
}

#allcast_wrapper #allcast_box #allcast_thank {
  padding-top: 80px;
  font-size: 123.077%;
}

#allcast_wrapper #allcast_box #allcast_thank_by {
  padding-top: 47px;
  font-size: 153.846%;
  line-height: 2.4em;
}

#allcast_wrapper #allcast_box #allcast_atntn {
  padding-top: 112px;
  padding-bottom: 114px;
  font-size: 107.692%;
}

#footer_wrapper {
  min-width: 1100px;
}

#footer_wrapper #footer_box {
  position: relative;
  width: 1000px;
  height: 292px;
  margin: 0 auto;
}

#footer_wrapper #footer_box #footer_shokotan {
  z-index: 20;
  position: absolute;
  bottom: 0;
  left: 8px;
}

#footer_wrapper #footer_box #footer_shokotan img {
  vertical-align: bottom;
}

#footer_wrapper #footer_box #footer_feel {
  z-index: 10;
  position: absolute;
  top: 51px;
  left: 200px;
}

#footer_navi_wrapper {
  background-color: #ffcb00;
}

#footer_navi_wrapper #footer_navi_box {
  display: table;
  width: 1100px;
  height: 60px;
  margin: 0 auto;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_sns {
  display: table-cell;
  width: 100px;
  vertical-align: middle;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_sns #footer_sns_list {
  list-style: none;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_sns #footer_sns_list li {
  display: inline-block;
  padding-right: 16px;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_sns #footer_sns_list li:last-child {
  padding-right: 0;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_sns #footer_sns_list li a {
  color: #000;
  display: block;
  text-decoration: none;
  font-size: 184.615%;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  padding: 6px;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_sns #footer_sns_list li a.active,
#footer_navi_wrapper #footer_navi_box #footer_navi_sns #footer_sns_list li a:hover {
  opacity: .6;
  -ms-filter: "alpha(opacity=60)";
  filter: alpha(opacity=60);
}

#footer_navi_wrapper #footer_navi_box #footer_navi_copy {
  display: table-cell;
  width: 900px;
  vertical-align: middle;
  text-align: center;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_copy a {
  font-size: 123.077%;
  font-family: HelveticaNeue,Helvetica,sans-serif;
  color: #000;
  text-decoration: none;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_totop {
  display: table-cell;
  width: 100px;
  text-align: right;
  vertical-align: middle;
  font-size: 0;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_totop a {
  display: inline-block;
  width: 60px;
  height: 60px;
  background-color: #000;
  vertical-align: bottom;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

#footer_navi_wrapper #footer_navi_box #footer_navi_totop a.active,
#footer_navi_wrapper #footer_navi_box #footer_navi_totop a:hover {
  opacity: .6;
  -ms-filter: "alpha(opacity=60)";
  filter: alpha(opacity=60);
}

#footer_navi_wrapper #footer_navi_box #footer_navi_totop a .arw_wrap {
  display: table-cell;
  width: 60px;
  height: 60px;
  text-align: center;
  vertical-align: middle;
}