@charset "utf-8";

/* - - - - - - - - - - - layout (common) - - - - - - - - - - - */

#main img, #main video, #main object,
.fancybox-container img, .fancybox-container video, .fancybox-container object {
  max-width: 100%;
  height: auto;
}

#topicpathArea {
  width: auto !important;
  max-width: 1012px;
  margin: 0 auto;
  font-size: 93.75%;
}





/*==================================================================================================================================*/



/*layout (pc) */



/*==================================================================================================================================*/

/* - - - - - - - - - - - - - - - - - (common) - - - - - - - - - - - - - - - - - */

.cnt_pc { display: block !important; }
.cnt_pc_inline { display: inline !important; }
.cnt_pc_inlineblock { display: inline-block !important; }
.cnt_pc_flex { display: flex !important; }
.cnt_pc_table { display: table !important; }
.cnt_sp { display: none !important; }
.cnt_sp_inline { display: none !important; }
.cnt_sp_inlineblock { display: none !important; }
.cnt_sp_flex { display: none !important; }
.cnt_sp_table { display: none !important; }

#main {
  position: relative;
  width: 100%;
  padding: 0 0 1px;

  font-family: 'Roboto', 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif !important;
  margin: 0;
  border: none;
  font-style: normal;
  font-weight: normal;
  text-decoration: none;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: .05em;
  font-feature-settings : "palt" 1;
  font-size: 15px;
  text-align: center;
  line-height: 1;
}

.fancybox-container {
  letter-spacing: .05em;
  font-feature-settings : "palt" 1;
  font-size: 15px;
}

#main *,
.fancybox-container * {
  font-family: 'Roboto', 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif !important;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

#main a:link,
.fancybox-container a:link {
  text-decoration: none;
  -webkit-transition: all .2s ease-in-out;
  -ms-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  -webkit-tap-highlight-color: #000;
  tap-highlight-color: #000;
}

#main a:visited,
.fancybox-container a:visited {
  text-decoration: none;
}

#main a:hover,
#main a:active,
.fancybox-container a:hover,
.fancybox-container a:active {
  text-decoration: none;
}

#topicpathArea {
  width: 1012px;
  margin: 0 auto;
}





/* - - - - - - - - - - - - - - - - - (content) - - - - - - - - - - - - - - - - - */

.titlebox {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 0 0 0;
  background: #111;
}

.mv0 {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.mv1 {
  position: absolute;
  right: 3%;
  top: 0;
  width: 298px;
}

.mv2 {
  position: absolute;
  right: 20%;
  top: 14%;
  width: 257px;
}

.mv3 {
  position: absolute;
  right: 14%;
  top: 41%;
  width: 264px;
}

.mv4 {
  position: absolute;
  right: 25%;
  top: 60%;
  width: 344px;
}

.main_copy {
  position: absolute;
  top: 54%;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-align: left;
}

.main_copy h1 {
  width: 76%;
  margin: 0 auto;
}

.btn_titile {
  width: 42%;
  margin: 20px auto 0;
}

.btn_titile a {
  position: relative;
  display: block;
  padding: 23px 10px 21px 10px;
  border-radius: 10px;
  border: 4px solid #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  background: url("../images/icn_down_wh.png") left 20px center / 14px auto no-repeat #E60027;
  color: #fff;
  font-size: 19px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
}

.btn_titile a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.btn_fixed {
  position: fixed;
  bottom: 5px;
  right: 0;
  z-index: 999;
}

.btn_fixed li {
  width: 240px;
  margin: 0 0 13px;
}

.btn_fixed li > a,
.btn_fixed li > span {
  position: relative;
  display: block;
  padding: 33px 10px 31px 46px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
}

.btn_fixed li.btn_check > a {
  padding: 18px 10px 16px 46px;
}

.btn_fixed li > a::before,
.btn_fixed li > span::before {
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  z-index: -1;
  content: "";
  width: calc(100% - 4px);
  height: calc(100% - 8px);
  border-radius: 10px 0px 0px 10px;
  border: 4px solid #fff;
  border-right: none;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  background: url("../images/icn_down_wh.png") left 20px center / 14px auto no-repeat #E60027;
  transform-origin: right top;
  -webkit-transition: all .3s;
  -ms-transition: all .3s;
  transition: all .3s;
}

.btn_fixed li.btn_check > a::before {
  background: url("../images/icn_check_wh_s.png") left 20px center / 14px auto no-repeat #E60027;
}

.btn_fixed li > span::before {
  background-image: none;
  background: #ccc;
}

.btn_fixed li a:hover {
  padding-left: 36px;
}

.btn_fixed li a:hover::before {
  width: calc(100% + 6px);
}

.btn_reserve {
  width: 90%;
  max-width: 720px;
  margin: 80px auto 80px;
}

.btn_reserve_top {
  margin: 80px auto 10px;
}

.btn_reserve_bottom {
  margin: 80px auto 10px;
}

.btn_reserve > a,
.btn_reserve > span {
  position: relative;
  display: block;
  padding: 33px 10px 31px;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
}

.btn_reserve > a::before,
.btn_reserve > span::before {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  z-index: -1;
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/icn_check_wh.png") left 34px center / 24px auto no-repeat #E60027;
  border-radius: 12px;
  transform-origin: center top;
  transform: scale(1, 1);
  -webkit-transition: transform .3s;
  -ms-transition: transform .3s;
  transition: transform .3s;
}

.btn_reserve > span::before {
  background-image: none;
  background: #ccc;
}

.btn_reserve a:hover::before {
  transform: scale(1.01, 1);
}

.btn_reserve a:hover {
  opacity: 0.8;
}

.btn_note {
  margin: 0 7% 80px;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  color: #e60027;
}

.btn_note span {
  font-weight: bold;
  font-size: 14px;
}

.btn_fixed_cir {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 180px;
  z-index: 999;
  transition: all .3s;
}

.btn_fixed_cir:hover {
  bottom: 5px;
}

h2.h2_cnt {
  position: relative;
  margin: 100px auto 40px;
  text-align: center;
  z-index: 2;
}

h2.h2_cnt::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  content: "";
  width: 100%;
  height: 20px;
  background: #111;
  transform: translate(0, -50%);
  z-index: -1;
}

h2.h2_cnt span {
  display: inline-block;
  padding: 0 20px;
  background: #fff;
  font-weight: bold;
  font-size: 32px;
  line-height: 1.2;
  text-align: center;
  color: #111;
}

.time_note {
  padding: 0 5% 30px;
  line-height: 1.7;
  font-size: 14px;
  text-align: center;
}

.end_note {
  display: inline-block;
  margin: 0 7% 60px;
  padding: 20px 30px;
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  line-height: 1.5;
  color: #e60027;
  border: 3px solid #e60027;
}

.end_note.mt80 {
  margin-top: 80px;
}

.caution_note {
  padding: 15px 0 0;
  line-height: 1.5;
  font-size: 14px;
  text-align: center;
  color: #e60027;
}

.content {
  padding: 0 0 150px;
}



/* guide_list */

.content_guide_list {
  padding: 50px 0;
  background: #111;
}

.guide_lead {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  column-gap: 30px;
  width: 86%;
  margin: 0 auto 68px;
  color: #fff;
}

.guide_lead h2 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  flex-basis: 48%;
  max-width: 48%;
  width: 48%;
  padding: 40px;
  border: 6px solid #fff;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.3;
  text-align: center;
}

.guide_lead p {
  flex: 1;
  font-size: 16px;
  line-height: 2;
  text-align: left;
}

.guide_lead p strong {
  color: #FFFF00;
}

.guide_list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  column-gap: 30px;
  position: relative;
  width: 86%;
  margin: 0 auto 0;
}

.guide_list > a {
  position: relative;
  display: block;
  padding: 0 0 36px;
  flex: 1;
  cursor: pointer;
  color: #fff;
  background: #444;
}

.guide_list > a::before {
  position: absolute;
  right: -30px;
  top: calc(50% - 29px);
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 29px 0 29px 30px;
  border-color: transparent transparent transparent #e60027;
}

.guide_list > a:last-child::before {
  display: none;
}

.guide_list > a::after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: block;
  content: "";
  width: 14px;
  height: 14px;
  background: url("../images/icn_open_grey.png") center center / cover no-repeat;
}

.guide_list > a:hover {
  opacity: 0.6;
}

.guide_list > a span {
  display: block;
  padding: 4px 20px 4px;
  background: rgba(230,0,39,0.70);
  font-weight: bold;
  font-size: 24px;
  color: #fff;
  text-align: left;
}

.guide_list > a span  span {
  display: inline;
  padding: 0 3px 0;
  font-weight: bold;
  font-size: 54px;
  background: transparent;
}

.guide_list > a h3 {
  padding: 30px 15px 15px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.5;
  text-align: center;
}

.guide_list > a p {
  margin: 0 15px;
  font-weight: normal;
  font-size: 14px;
  line-height: 1.57;
  text-align: left;
}

.guide_list > a p + p {
  margin: 10px 15px 0;
  padding: 10px 0 0;
  border-top: 1px solid #999;
  font-weight: bold;
}

.guide_list_icon {
  position: absolute;
  right: -15px;
  top: -15px;
  display: block;
  width: 35%;
  max-width: 100px;
}



/* guide */

.guide {
  background: #fff;
  display: none;
  margin: 0;
  width: 82%;
  max-width: 1100px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 50px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.guide_ttl {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  margin: 0 auto 30px;
  padding: 0 0 30px;
  border-bottom: 2px solid #e60027;
  font-weight: bold;
  font-size: 28px;
  line-height: 1.3;
  text-align: left;
  color: #e60027;
}

.guide_ttl1 {
  -webkit-flex-basis: 130px;
  -ms-flex-basis: 130px;
  flex-basis: 130px;
  max-width: 130px;
  width: 130px;
  margin: 0 16px 0 0;
}

.guide_ttl2 {
  padding: 0 18px 12px 0;
  font-weight: bold;
  font-size: 36px;
  line-height: 1;
}

.guide_ttl2 span {
  font-weight: bold;
  font-size: 70px;
}

.guide_ttl3 {
  flex: 1;
  padding: 8px 0 0;
}

.guide h3 {
  margin: 0 auto 20px;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.3;
  text-align: left;
}

.guide dl {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
  align-items: flex-start;
  line-height: 1.75;
}

.guide dt {
  margin: 0 10px 15px 0;
  padding: 2px 24px 1px;
  background: #e60027;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  color: #fff;
}

.guide dd {
  padding: 5px 0 0;
  margin: 0 0 15px;
  font-size: 17px;
}

.guide dd.guide_date {
  padding: 3px 0 0;
  font-weight: bold;
  font-size: 20px;
}

.guide p {
  font-size: 17px;
  line-height: 1.76;
  text-align: center;
}

.guide p.guide_note {
  padding: 0 0 20px 1em;
  text-indent: -0.62em;
  text-align: left;
}

.guide p.guide_note:last-of-type {
  padding-bottom: 0;
}

.guide p.guide_note span {
  display: inline-block;
  padding: 0 0.2em 0 0;
  color: #e60027;
}



/* corp_list */

.cnt_day {
  padding: 100px 0 50px;
}

.cnt_day_grey {
  padding: 60px 0 80px;
  background: #EEEEEE;
}

.corp_list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  width: 86%;
  margin: 0 auto;
  padding: 0 0 50px;
  text-align: left;
}

.corp_list::after {
  content: "";
  display: block;
  -webkit-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
  max-width: 32%;
  width: 32%;
}

.corp_list > a {
  -webkit-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
  max-width: 32%;
  width: 32%;
  margin: 0 0 2.2%;
  padding: 15px 15px 12px;
  background: url("../images/icn_open_grey.png") right 10px top 10px / 20px no-repeat #fff;
  cursor: pointer;
  color: #333;
}

/*.corp_list > a {
  background-image: none;
  cursor: default;
  pointer-events: none;
}*/

.corp_list > a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.corp_list > div {
  -webkit-flex-basis: 32%;
  -ms-flex-basis: 32%;
  flex-basis: 32%;
  max-width: 32%;
  width: 32%;
  display: block;
  margin: 0 0 2.2%;
  padding: 20px 15px 20px;
  background: #f1eee8;
  text-align: center;
}

.corp_list > div.corp_title_sector {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  padding: 12px 12px 8px;
  background: #999;
  font-weight: 500;
  font-size: 28px;
  line-height: 1.15;
  color: #fff;
}

/*.corp_list > div.corp_title_sector.it { background: #ed7a94; }
.corp_list > div.corp_title_sector.industry { background: #ffa94b; }
.corp_list > div.corp_title_sector.energy { background: #58b765; }
.corp_list > div.corp_title_sector.other { background: #9fa0a0; }
.corp_list > div.corp_title_sector.mobility { background: #e5b927; }*/

.corp_num {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 36px;
  height: 36px;
  background: #999;
  font-weight: 700;
  font-size: 25px;
  text-align: center;
  color: #fff;
  line-height: 0.5;
}

.corp_time {
  display: inline-block;
  padding: 0 0 0 8px;
  font-weight: 700;
  font-size: 22px;
  color: #777;
}

.corp_name {
  padding: 9px 0 10px;
  font-weight: bold;
  font-size: 17px;
  line-height: 1.2;
}

.corp_name.archive_name {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: calc(100% - 66px);
  min-height: 36px;
  padding: 0 0 0;
  vertical-align: top;
}

.archive_space {
  width: 100%;
  height: 12px;
}

.businessfield {
  display: inline-block;
  width: auto;
  min-width: 50px;
  height: 25px;
  line-height: 24px;
  margin: 0 6px 6px 0;
  padding: 1px 10px 1px;
  background: #999;
  text-align: center;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
}

.businessfield.it { background: #399DDC; }
.businessfield.industry { background: #FF6550; }
.businessfield.energy { background: #00ABAB; }
.businessfield.other { background: #9FA0A0; }
.businessfield.special { background: #E60027; }
.businessfield.mobility { background: #e5b927; }

.art_tech {
  display: inline-block;
  width: 25px;
  height: 25px;
  line-height: 24px;
  margin: 0 6px 6px 0;
  padding: 1px 0 1px;
  text-align: center;
  vertical-align: top;
  background: #333;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
}

.art_tech.na {
  background: #ccc;
}



/* - - - modal - - - */

.fancybox-bg {
  background: #111;
}

.fancybox-button {
  background: transparent;
}

.fancybox-button:disabled {
  display: none;
}

.fancybox-navigation .fancybox-button {
  width: 76px;
  height: 132px;
}

.fancybox-navigation .fancybox-button div img {
  width: 30px;
  height: 56px;
}

.fancybox-slide--html .fancybox-close-small {
  width: 50px;
  height: 50px;
  padding: 10px;
  right: 15px;
  top: 15px;
}

.fancybox-close-small img {
  width: 30px;
  height: 30px;
}



/* corp_info */

.corp_info {
  background: #fff;
  border: 3px solid #333;
  display: none;
  margin: 0;
  width: 64%;
  max-width: 900px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 50px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-container .corp_num {
  width: 50px;
  height: 50px;
  font-size: 36px;
}

.fancybox-container .corp_time {
  padding: 0 0 0 16px;
  font-size: 34px;
}

.fancybox-container .corp_name {
  padding: 15px 0 13px;
  font-size: 28px;
}

.fancybox-container .corp_name.archive_name {
  width: calc(100% - 80px);
  min-height: 50px;
  padding: 0 0 0;
  vertical-align: top;
}

.fancybox-container .businessfield {
  min-width: 100px;
  height: 30px;
  line-height: 30px;
  margin: 0 8px 8px 0;
  padding: 0 10px;
  font-size: 15px;
}

.fancybox-container .art_tech {
  width: 30px;
  height: 30px;
  line-height: 30px;
  margin: 0 8px 8px 0;
  font-size: 15px;
}

.corp_info p {
  margin: 20px 0 0;
  padding: 20px 0 0;
  font-size: 16px;
  line-height: 1.75;
  border-top: 2px solid #333;
}

.corp_job {
  margin: 20px 0 0;
  padding: 12px 20px 16px;
  border-radius: 8px;
  background: #eee;
  font-size: 16px;
  line-height: 1.75;
}

.btn_play,
.btn_corp {
  width: 48%;
  margin: 18px auto 0;
}

.btn_play > a,
.btn_corp > a,
.btn_play > span {
  position: relative;
  display: block;
  padding: 11px 0 10px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
}

.corp_list > div .btn_play {
  width: 190px;
  margin: 9px auto 0;
}

.corp_list > div .btn_play > a,
.corp_list > div .btn_play > span {
  padding: 15px 0 13px;
  font-size: 16px;
}

.btn_play > a::before,
.btn_corp > a::before,
.btn_play > span::before {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  z-index: -1;
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/icn_play_wh.png") left 19px center / 20px auto no-repeat #E60027;
  transform-origin: center top;
  transform: scale(1, 1);
  -webkit-transition: transform .3s;
  -ms-transition: transform .3s;
  transition: transform .3s;
}

.btn_corp > a::before {
  background: url("../images/icn_open_grey.png") left 19px center / 20px auto no-repeat #222;
}

.btn_play > span::before {
  background-image: none;
  background: #ccc;
}

.btn_play a:hover::before {
}

.btn_play a:hover,
.btn_corp a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.modal_movie {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  max-width: 1024px;
  margin: 20px auto 0;
}

.modal_movie iframe,
.modal_movie video {
  width: 100%;
  min-width: 100%;
  height: 100%;
}



/* parts */

.group_movie {
  position: relative;
  width: 100%;
  padding: 3px 0;
  background: #111;
}

.group_movie div {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
}

.group_movie iframe {
  width: 100%;
  height: 100%;
}

.group_sector {
  padding: 40px 0;
  background: #eee;
}

.sector_title {
  position: relative;
  margin: 0 0 20px;
  padding: 0 0 23px;
  font-weight: bold;
  font-size: 25px;
  line-height: 1.3;
  text-align: center;
}

.sector_title::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  content: "";
  width: 120px;
  height: 6px;
  background: #999;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sector {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  width: 86%;
  margin: 0 auto 30px;
  text-align: center;
}

.sector dl {
  -webkit-flex-basis: 23%;
  -ms-flex-basis: 23%;
  flex-basis: 23%;
  max-width: 23%;
  width: 23%;
  margin: 0 0 0;
}

.sector dt {
  font-size: 17px;
  font-weight: bold;
}

.sector dt.it { color: #399DDC; }
.sector dt.industry { color: #FF6550; }
.sector dt.energy { color: #00ABAB; }
.sector dt.other { color: #9FA0A0; }
.sector dt.mobility { color: #e5b927; }

.sector dt img {
  display: block;
  width: 100px;
  margin: 0 auto 10px;
}

.sector dd {
  padding: 9px 0 0;
  line-height: 1.7;
  font-size: 14px;
  text-align: left;
}

.comingsoon {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 86%;
  margin: 0 auto;
  height: 162px;
  background: url("../images/bg_comingsoon.png") center center / cover no-repeat;
  border-radius: 15px;
  overflow: hidden;
  font-weight: 300;
  font-size: 40px;
  text-align: center;
  color: #555;
}

.group_moreinfo {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  width: 86%;
  margin: 0 auto;
  color: #fff;
  text-align: center;
}

.group_moreinfo_cnt1 {
  -webkit-flex-basis: 58%;
  -ms-flex-basis: 58%;
  flex-basis: 58%;
  max-width: 58%;
  width: 58%;
  padding: 30px;
  background: #e60027;
}

.group_moreinfo_cnt2 {
  -webkit-flex-basis: 42%;
  -ms-flex-basis: 42%;
  flex-basis: 42%;
  max-width: 42%;
  width: 42%;
  padding: 30px;
  background: #be0424;
}

.group_moreinfo h3 {
  position: relative;
  margin: 0 auto 30px;
  padding: 0 0 20px;
  font-weight: bold;
  font-size: 25px;
  line-height: 1.3;
}

.group_moreinfo h3::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  content: "";
  width: 120px;
  height: 6px;
  background: #fff;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.group_moreinfo p {
  margin: 0 auto 20px;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.8;
}

.group_moreinfo p.moreinfo_note {
  margin: 0 auto 15px;
  font-weight: normal;
  font-size: 13px;
  line-height: 1.6;
}

.group_moreinfo a {
  display: inline-block;
  width: 94%;
  max-width: 450px;
  margin: 0 auto 20px;
  padding: 8px 30px 6px;
  background: url("../images/icn_new_bl.png") right 10px center / 14px auto no-repeat #fff;
  border: 5px solid #111;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.5;
  text-align: center;
  color: #111;
  text-decoration: none;
}

.group_moreinfo a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.howto_cnt {
  width: 90%;
  max-width: 640px;
  margin: 0 auto;
  text-align: left;
  line-height: 1.6;
}

.howto_cnt ul {
  margin: 0 auto 20px;
}

.howto_cnt ul li {
  margin: 0 auto 12px;
  padding-left: 1.5em;
  text-indent: -0.8em;
  font-size: 20px;
  font-weight: 700;
}

.howto_cnt ul li span {
  display: inline-block;
  margin: 0 8px 0 0;
  font-weight: 700;
  color: #E60027;
}

.howto_ph {
  margin: 0 auto 25px;
  box-shadow: 2px 2px 25px rgba(0,0,0,0.2);
}

.howto_note {
  font-size: 13px;
  text-align: center;
}





/*==================================================================================================================================*/



/*layout (tablet) */



/*==================================================================================================================================*/

@media only screen and (min-width: 768px) and (max-width: 1080px) {

.mv0 {
  width: 120%;
  min-width: 120%;
  margin: 0 -10%;
}

.mv1 {
  right: 2%;
  top: 0;
  width: 224px;
}

.mv2 {
  right: 14%;
  top: 20%;
  width: 193px;
}

.mv3 {
  right: 10%;
  top: 40%;
  width: 199px;
}

.mv4 {
  right: 18%;
  top: 60%;
  width: 258px;
}

.main_copy h1 {
  width: 82%;
}

}





/*==================================================================================================================================*/



/*layout (smartphone) */



/*==================================================================================================================================*/

@media only screen and (min-width: 1px) and (max-width: 767px) {

/* - - - - - - - - - - - - - - - - - (common) - - - - - - - - - - - - - - - - - */

.cnt_pc { display: none !important; }
.cnt_pc_inline { display: none !important; }
.cnt_pc_inlineblock { display: none !important; }
.cnt_pc_flex { display: none !important; }
.cnt_pc_table { display: none !important; }
.cnt_sp { display: block !important; }
.cnt_sp_inline { display: inline !important; }
.cnt_sp_inlineblock { display: inline-block !important; }
.cnt_sp_flex { display: flex !important; }
.cnt_sp_table { display: table !important; }

body { min-width: auto; }

#main {
  position: relative;
  width: 100%;
  padding: 0 0 1px;
  font-size: 14px;
}

#topicpathArea {
  display: none;
}





/* - - - - - - - - - - - - - - - - - (content) - - - - - - - - - - - - - - - - - */

.titlebox {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 0 0 0;
  background: #111;
}

.mv0 {
  display: block;
  position: relative;
  width: 170%;
  min-width: 170%;
  margin: 0 -35%;
  height: auto;
}

.mv1 {
  position: absolute;
  right: auto;
  top: auto;
  width: 37.5%;
  left: 77%;
  bottom: 160px;
}

.mv2 {
  position: absolute;
  right: auto;
  top: auto;
  width: 32.22%;
  left: 57%;
  bottom: 113px;
}

.mv3 {
  position: absolute;
  right: auto;
  top: auto;
  width: 33.33%;
  left: 35%;
  bottom: 54px;
}

.mv4 {
  position: absolute;
  right: auto;
  top: auto;
  width: 43%;
  left: -7%;
  bottom: 82px;
}

.main_copy {
  position: absolute;
  top: 58%;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-align: left;
}

.main_copy h1 {
  width: 94%;
}

.lead {
  padding: 18px 5% 20px;
  font-size: 14px;
  line-height: 1.86;
  text-align: left;
}

.btn_titile {
  width: 84%;
  margin: 20px auto 0;
}

.btn_titile a {
  position: relative;
  display: block;
  padding: 18px 10px 16px 10px;
  border-radius: 10px;
  border: 3px solid #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  background: url("../images/icn_down_wh.png") left 20px center / 14px auto no-repeat #E60027;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
}

.btn_titile a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.btn_fixed {
  position: fixed;
  bottom: 5px;
  right: 0;
  z-index: 999;
}

.btn_fixed {
  position: fixed;
  bottom: 12px;
  right: 0;
  left: 0;
  z-index: 999;
  width: 100%;
}

.btn_fixed li {
  display: inline-block;
  width: 98px;
  margin: 0 3px 0;
}

.btn_fixed li > a,
.btn_fixed li > span {
  position: relative;
  display: block;
  padding: 8px 0 20px 0;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
  line-height: 1.2;
}

.btn_fixed li.btn_check > a {
  padding: 8px 0 20px 0;
}

.btn_fixed li > a::before,
.btn_fixed li > span::before {
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  z-index: -1;
  content: "";
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border-radius: 7px 7px 7px 7px;
  border: 3px solid #fff;
  border-right: 3px solid #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  background: url("../images/icn_down_wh.png") center bottom 4px / 10px auto no-repeat #E60027;
  transform-origin: right top;
  -webkit-transition: all .3s;
  -ms-transition: all .3s;
  transition: all .3s;
}

.btn_fixed li.btn_check > a::before {
  background: url("../images/icn_check_wh_s.png") center bottom 4px / 10px auto no-repeat #E60027;
}

.btn_fixed li > span::before {
  background-image: none;
  background: #ccc;
}

.btn_fixed li a:hover {
  padding-left: 0;
}

.btn_fixed li a:hover::before {
  width: calc(100% - 6px);
}

.btn_reserve {
  width: 90%;
  max-width: 720px;
  margin: 40px auto 50px;
}

.btn_reserve_top {
  margin: 40px auto 10px;
}

.btn_reserve_bottom {
  margin: 40px auto 10px;
}

.btn_reserve > a,
.btn_reserve > span {
  position: relative;
  display: block;
  padding: 22px 0 20px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
}

.btn_reserve > a::before,
.btn_reserve > span::before {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  z-index: -1;
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/icn_check_wh.png") left 12px center / 12px auto no-repeat #E60027;
  border-radius: 12px;
  transform-origin: center top;
  transform: scale(1, 1);
  -webkit-transition: transform .3s;
  -ms-transition: transform .3s;
  transition: transform .3s;
}

.btn_reserve > span::before {
  background-image: none;
  background: #ccc;
}

.btn_reserve a:hover::before {
  transform: scale(1.01, 1);
}

.btn_reserve a:hover {
  opacity: 0.8;
}

.btn_note {
  margin: 0 7% 60px;
  font-weight: bold;
  font-size: 15px;
  line-height: 1.5;
  text-align: center;
  color: #e60027;
}

.btn_note span {
  font-weight: bold;
  font-size: 13px;
}

.btn_fixed_cir {
  position: fixed;
  bottom: 10px;
  right: 0;
  width: 90px;
  z-index: 999;
  transition: all .3s;
}

.btn_fixed_cir:hover {
  bottom: 5px;
}

h2.h2_cnt {
  position: relative;
  margin: 60px auto 30px;
  text-align: center;
  z-index: 2;
}

h2.h2_cnt::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  content: "";
  width: 100%;
  height: 20px;
  background: #111;
  transform: translate(0, -50%);
  z-index: -1;
}

h2.h2_cnt span {
  display: inline-block;
  padding: 0 20px;
  background: #fff;
  font-weight: bold;
  font-size: 25px;
  line-height: 1.2;
  text-align: center;
  color: #111;
}

.time_note {
  padding: 0 5% 30px;
  line-height: 1.7;
  font-size: 14px;
  text-align: center;
}

.end_note {
  display: inline-block;
  margin: 0 5% 30px;
  padding: 15px 15px;
  font-weight: bold;
  font-size: 15px;
  text-align: center;
  line-height: 1.5;
  color: #e60027;
  border: 3px solid #e60027;
}

.end_note.mt80 {
  margin-top: 40px;
}

.caution_note {
  padding: 15px 0 0;
  line-height: 1.5;
  font-size: 14px;
  text-align: center;
  color: #e60027;
}

.content {
  padding: 0 0 80px;
}



/* guide_list */

.content_guide_list {
  padding: 50px 0 30px;
  background: #111;
}

.guide_lead {
  display: block;
  width: 90%;
  margin: 0 auto 38px;
  color: #fff;
}

.guide_lead h2 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  flex-basis: 100%;
  max-width: 100%;
  width: 100%;
  margin-bottom: 30px;
  padding: 13px 15px 13px;
  border: 4px solid #fff;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.3;
  text-align: center;
}

.guide_lead p {
  flex: 1;
  font-size: 16px;
  line-height: 2;
  text-align: left;
}

.guide_lead p strong {
  color: #FFFF00;
}

.guide_list {
  display: block;
  position: relative;
  width: 80%;
  margin: 0 auto 0;
}

.guide_list > a {
  position: relative;
  display: block;
  margin: 0 auto 30px;
  padding: 0 0 36px;
  flex: 1;
  cursor: pointer;
  color: #fff;
  background: #444;
}

.guide_list > a::before {
  position: absolute;
  right: auto;
  left: calc(50% - 12px);
  top: auto;
  bottom: -44px;
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 29px 0 29px 30px;
  border-color: transparent transparent transparent #e60027;
  transform: rotate(90deg);
}

.guide_list > a:last-child::before {
  display: none;
}

.guide_list > a::after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: block;
  content: "";
  width: 14px;
  height: 14px;
  background: url("../images/icn_open_grey.png") center center / cover no-repeat;
}

.guide_list > a:hover {
  opacity: 0.6;
}

.guide_list > a span {
  display: block;
  padding: 4px 20px 4px;
  background: rgba(230,0,39,0.70);
  font-weight: bold;
  font-size: 24px;
  color: #fff;
  text-align: left;
}

.guide_list > a span  span {
  display: inline;
  padding: 0 3px 0;
  font-weight: bold;
  font-size: 54px;
  background: transparent;
}

.guide_list > a h3 {
  padding: 30px 15px 15px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.5;
  text-align: center;
}

.guide_list > a p {
  margin: 0 15px;
  font-weight: normal;
  font-size: 14px;
  line-height: 1.57;
  text-align: left;
}

.guide_list > a p + p {
  margin: 10px 15px 0;
  padding: 10px 0 0;
  border-top: 1px solid #999;
  font-weight: bold;
}

.guide_list_icon {
  position: absolute;
  right: -15px;
  top: -15px;
  display: block;
  width: 35%;
  max-width: 90px;
}



/* guide */

.guide {
  background: #fff;
  display: none;
  margin: 0;
  width: 82%;
  max-width: 1100px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 34px 10px 32px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.guide_ttl {
  display: block;
  margin: 0 auto 18px;
  padding: 0 0 15px;
  border-bottom: 2px solid #e60027;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.3;
  text-align: center;
  color: #e60027;
}

.guide_ttl1 {
  -webkit-flex-basis: 80px;
  -ms-flex-basis: 80px;
  flex-basis: 80px;
  max-width: 80px;
  width: 80px;
  margin: 0 auto 0;
}

.guide_ttl2 {
  padding: 0 0 8px 0;
  font-weight: bold;
  font-size: 18px;
  line-height: 1;
  text-align: center;
}

.guide_ttl2 span {
  font-weight: bold;
  font-size: 26px;
}

.guide_ttl3 {
  flex: 1;
  padding: 0 0 0;
}

.guide h3 {
  margin: 0 auto 12px;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.3;
  text-align: left;
}

.guide dl {
  display: block;
  line-height: 1.75;
  text-align: left;
}

.guide dt {
  display: inline-block;
  margin: 0 0 10px 0;
  padding: 2px 24px 1px;
  background: #e60027;
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  color: #fff;
}

.guide dd {
  display: block;
  padding: 0 0 0;
  margin: 0 0 15px;
  font-size: 14px;
}

.guide dd.guide_date {
  padding: 3px 0 0;
  font-weight: bold;
  font-size: 16px;
}

.guide p {
  font-size: 17px;
  line-height: 1.76;
  text-align: center;
}

.guide p.guide_note {
  padding: 0 0 20px 1em;
  text-indent: -0.62em;
  text-align: left;
}

.guide p.guide_note:last-of-type {
  padding-bottom: 0;
}

.guide p.guide_note span {
  display: inline-block;
  padding: 0 0.2em 0 0;
  color: #e60027;
}



/* corp_list */

.cnt_day {
  padding: 50px 0 50px;
}

.cnt_day_grey {
  padding: 50px 0 50px;
  background: #ebebeb;
}

.corp_list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  width: 86%;
  margin: 0 auto;
  padding: 0 0 50px;
  text-align: left;
}

.corp_list::after {
  display: none;
}

.corp_list > a {
  -webkit-flex-basis: 100%;
  -ms-flex-basis: 100%;
  flex-basis: 100%;
  max-width: 100%;
  width: 100%;
  margin: 0 0 4%;
  padding: 12px 12px 8px;
  background: url("../images/icn_open_grey.png") right 10px top 10px / 20px no-repeat #fff;
  cursor: pointer;
  color: #333;
}

/*.corp_list > a {
  background-image: none;
  cursor: default;
  pointer-events: none;
}*/

.corp_list > a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.corp_list::after {
  content: "";
  display: block;
}

.corp_list > div {
  -webkit-flex-basis: 100%;
  -ms-flex-basis: 100%;
  flex-basis: 100%;
  max-width: 100%;
  width: 100%;
  display: block;
  margin: 0 0 4%;
  padding: 15px 15px 20px;
  background: #f1eee8;
  text-align: center;
}

.corp_list > div.corp_title_sector {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  padding: 12px 12px 8px;
  background: #999;
  font-weight: 500;
  font-size: 28px;
  line-height: 1.15;
  color: #fff;
}

.corp_num {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 36px;
  height: 36px;
  background: #999;
  font-weight: 700;
  font-size: 25px;
  text-align: center;
  color: #fff;
  line-height: 0.5;
}

.corp_time {
  display: inline-block;
  padding: 3px 0 0 0;
  font-weight: 700;
  font-size: 20px;
  color: #777;
}

.corp_name {
  padding: 9px 0 10px;
  font-weight: bold;
  font-size: 15px;
  line-height: 1.2;
}

.corp_name.archive_name {
  display: block;
  width: 100%;
  min-height: auto;
  padding: 9px 0 0;
  vertical-align: top;
}

.archive_space {
  width: 100%;
  height: 12px;
}

.businessfield {
  display: inline-block;
  width: auto;
  min-width: 40px;
  height: 20px;
  line-height: 20px;
  margin: 0 5px 5px 0;
  padding: 0 5px;
  background: #999;
  text-align: center;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
}

.art_tech {
  display: inline-block;
  width: 20px;
  height: 20px;
  line-height: 20px;
  margin: 0 5px 5px 0;
  padding: 0 0 0;
  text-align: center;
  vertical-align: top;
  background: #333;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
}

.art_tech.na {
  background: #ccc;
}



/* - - - modal - - - */

.fancybox-bg {
  background: #111;
}

.fancybox-button {
  background: transparent;
}

.fancybox-button:disabled {
  display: none;
}

.fancybox-navigation .fancybox-button {
  width: 62px;
  height: 110px;
}

.fancybox-navigation .fancybox-button div img {
  width: 16px;
  height: 32px;
}

.fancybox-slide--html .fancybox-close-small {
  width: 26px;
  height: 26px;
  padding: 2px;
  right: 15px;
  top: 15px;
}

.fancybox-close-small img {
  width: 22px;
  height: 22px;
}



/* corp_info */

.corp_info {
  background: #fff;
  display: none;
  margin: 0;
  width: 82%;
  max-width: 900px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 34px 17px 32px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-container .corp_num {
  width: 34px;
  height: 34px;
  font-size: 23px;
}

.fancybox-container .corp_time {
  display: inline-block;
  padding: 0 0 0 10px;
  font-size: 20px;
}

.fancybox-container .corp_name {
  padding: 7px 0 6px;
  font-size: 16px;
}

.fancybox-container .corp_name.archive_name {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: calc(100% - 64px);
  min-height: 34px;
  padding: 0 0 0;
  vertical-align: top;
}

.fancybox-container .businessfield {
  min-width: 50px;
  height: 24px;
  line-height: 24px;
  margin: 0 5px 5px 0;
  padding: 0 6px;
  font-size: 10px;
}

.fancybox-container .art_tech {
  width: 24px;
  height: 24px;
  line-height: 24px;
  margin: 0 5px 5px 0;
  font-size: 10px;
}

.corp_info p {
  margin: 16px 0 0;
  padding: 16px 0 0;
  font-size: 14px;
  line-height: 1.6;
  border-top: 2px solid #333;
}

.corp_job {
  margin: 16px 0 0;
  padding: 9px 10px 11px;
  border-radius: 6px;
  background: #eee;
  font-size: 14px;
  line-height: 1.6;
}

.btn_play,
.btn_corp {
  width: 100%;
  margin: 15px auto 0;
}

.btn_play > a,
.btn_corp > a,
.btn_play > span {
  position: relative;
  display: block;
  padding: 11px 0 10px;
  color: #fff;
  font-size: 19px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  z-index: 9;
}

.btn_play > a::before,
.btn_corp > a::before,
.btn_play > span::before {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  z-index: -1;
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/icn_play_wh.png") left 19px center / 20px auto no-repeat #E60027;
  transform-origin: center top;
  transform: scale(1, 1);
  -webkit-transition: transform .3s;
  -ms-transition: transform .3s;
  transition: transform .3s;
}

.btn_corp > a::before {
  background: url("../images/icn_open_grey.png") left 19px center / 20px auto no-repeat #222;
}

.btn_play > span::before {
  background-image: none;
  background: #ccc;
}

.btn_play a:hover::before {
}

.btn_play a:hover,
.btn_corp a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.modal_movie {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  max-width: 1024px;
  margin: 20px auto 0;
}

.modal_movie iframe,
.modal_movie video {
  width: 100%;
  min-width: 100%;
  height: 100%;
}



/* parts */

.group_movie {
  position: relative;
  width: 100%;
  padding: 0 0;
  background: #111;
}

.group_movie div {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
}

.group_movie iframe {
  width: 100%;
  height: 100%;
}

.group_sector {
  padding: 30px 0 5px;
  background: #eee;
}

.sector_title {
  position: relative;
  margin: 0 0 20px;
  padding: 0 0 15px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.3;
  text-align: center;
}

.sector_title::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  content: "";
  width: 120px;
  height: 6px;
  background: #999;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sector {
  display: block;
  width: 90%;
  margin: 0 auto 0;
  text-align: center;
}

.sector dl {
  max-width: 100%;
  width: 100%;
  margin: 0 0 30px;
}

.sector dt {
  font-size: 17px;
  font-weight: bold;
  line-height: 1.3;
}

.sector dt img {
  display: block;
  width: 100px;
  margin: 0 auto 10px;
}

.sector dd {
  padding: 9px 0 0;
  line-height: 1.7;
  font-size: 14px;
  text-align: left;
}

.comingsoon {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 90%;
  margin: 0 auto;
  height: 162px;
  background: url("../images/bg_comingsoon.png") center center / cover no-repeat;
  border-radius: 15px;
  overflow: hidden;
  font-weight: 300;
  font-size: 26px;
  text-align: center;
  color: #555;
}

.group_moreinfo {
  display: block;
  width: 90%;
  margin: 0 auto;
  color: #fff;
  text-align: center;
}

.group_moreinfo_cnt1 {
  max-width: 100%;
  width: 100%;
  padding: 20px 15px;
  background: #e60027;
}

.group_moreinfo_cnt2 {
  max-width: 100%;
  width: 100%;
  padding: 20px 15px;
  background: #be0424;
}

.group_moreinfo h3 {
  position: relative;
  margin: 0 auto 20px;
  padding: 0 0 15px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.3;
}

.group_moreinfo h3::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  content: "";
  width: 90px;
  height: 5px;
  background: #fff;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.group_moreinfo p {
  margin: 0 auto 20px;
  font-weight: bold;
  font-size: 15px;
  line-height: 1.8;
}

.group_moreinfo p.moreinfo_note {
  margin: 0 auto 15px;
  font-weight: normal;
  font-size: 13px;
  line-height: 1.6;
}

.group_moreinfo a {
  display: inline-block;
  width: 94%;
  max-width: 450px;
  margin: 0 auto 20px;
  padding: 12px 20px 10px;
  background: url("../images/icn_new_bl.png") right 6px center / 10px auto no-repeat #fff;
  border: 5px solid #111;
  font-weight: bold;
  font-size: 19px;
  line-height: 1.5;
  text-align: center;
  color: #111;
  text-decoration: none;
}

.group_moreinfo a:hover {
  -webkit-transform: translate(3px, 3px);
  -ms-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
}

.howto_cnt {
  width: 90%;
  max-width: 640px;
  margin: 0 auto;
  text-align: left;
  line-height: 1.6;
}

.howto_cnt ul {
  margin: 0 auto 20px;
}

.howto_cnt ul li {
  margin: 0 auto 10px;
  padding-left: 1.5em;
  text-indent: -0.8em;
  font-size: 17px;
  font-weight: 700;
}

.howto_cnt ul li span {
  display: inline-block;
  margin: 0 8px 0 0;
  font-weight: 700;
  color: #E60027;
}

.howto_ph {
  margin: 0 auto 25px;
  box-shadow: 2px 2px 18px rgba(0,0,0,0.2);
}

.howto_note {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 13px;
  text-align: left;
}





}





/* - - - - - - - - - - - - - - - - - (print) - - - - - - - - - - - - - - - - - */

@media print {
  html, body { width: 1200px; }
  .btn_fixed { display: none; }
}

/* - - - - - - - - - - - /end - - - - - - - - - - - */









