@charset "UTF-8";
/* =========================================================
  Common
============================================================ */
html { font-size: 62.5%; }

body { color: #333; font-size: 12px; font-size: 1.2rem; font-family: "Oswald","Arial","Meiryo","Hiragino Kaku Gothic Pro","MS PGothic", Osaka,sans-serif; font-weight: 700; letter-spacing: 0em; }

@media (min-width: 601px) { body { background: url(../images/bg_header.png) repeat-x center top, url(../images/bg_main.png) repeat; background-color: #bff4ff; } }

@media (max-width: 600px) { body { background: #bff4ff url(../images/bg_main.png) repeat; } }

/*html[lang="en"] body,
html[lang="it"] body,
html[lang="fr"] body {
  font-family: -apple-system, BlinkMacSystemFont, Open Sans, Arial, "Helvetica Neue", Helvetica, "Segoe UI", Roboto, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  input {
    font-family: -apple-system, BlinkMacSystemFont, Open Sans, Arial, "Helvetica Neue", Helvetica, "Segoe UI", Roboto, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  }
}

html[lang="zh-cn"] body {
  font-family: -apple-system, BlinkMacSystemFont, '宋体-简', 'SimSun', 'sans-serif';
  input {
    font-family: -apple-system, BlinkMacSystemFont, '宋体-简', 'SimSun', 'sans-serif';
  }
}

html[lang="zh-tw"] body {
  font-family: -apple-system, BlinkMacSystemFont, 'PMingLiU', MingLiU, 'MS UI Gothic', sans-serif;
  input {
    font-family: -apple-system, BlinkMacSystemFont, 'PMingLiU', MingLiU, 'MS UI Gothic', sans-serif;
  }
}

html[lang="th"] body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Tahoma", "Leelawadee", Arial, sans-serif;
  input {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Tahoma", "Leelawadee", Arial, sans-serif;
  }
}*/
a { color: #333; }

a:link { color: #333; }

a:hover { color: #fff; }

a:visited { color: #333; }

a:active { color: #fff; }

a:focus, *:focus { outline: none; }

.g-headerNav_inner, .g-headerUtil_inner, .g-header_mainInner, .js-modalDialog .c-modal_dialogInner { max-width: 1094px; }

.g-content_inner { max-width: 1094px; }

@media (max-width: 600px) { .g-content_inner { padding: 0; } }

@media (min-width: 961px) { .g-pageColumn-main { padding-right: 288px; margin-right: -288px; }
  .g-pageMain { margin-right: 28px; }
  .g-pageColumn-side { width: 288px; } }

/* =========================================================
  Header
============================================================ */
@media (min-width: 961px) { .g-header { height: 140px; } }

@media (min-width: 601px) and (max-width: 960px) { .g-header { height: 140px; } }

@media (min-width: 601px) { .g-header_main { background-color: transparent; } }

@media (max-width: 600px) { .g-header_main { min-height: 105px; background-color: rgba(0, 0, 0, 0.8); } }

@media (max-width: 600px) { .g-header_mainInner { padding: 0; } }

@media (min-width: 601px) { .g-headerLogo { padding: 0; display: block; } }

@media (max-width: 600px) { .g-headerLogo { float: none; } }

.g-headerLogo_label { min-height: inherit; }

.g-headerLogo_label > a { position: absolute; left: 0; top: 22px; display: block; }

@media (min-width: 601px) and (max-width: 960px) { .g-headerLogo_label > a { width: 30%; } }

@media (max-width: 600px) { .g-headerLogo_label > a { left: 1.7vw; top: 1.9vw; } }

@media (min-width: 601px) and (max-width: 960px) { .g-headerLogo_label > a > img { width: 100%; height: auto; } }

@media (max-width: 600px) { .g-headerLogo_label > a > img { width: 130px; } }

.g-headerLogo_label > h1 { position: absolute; left: 33%; top: 10px; margin: 0; opacity: .35; font-size: 22px; font-size: 2.2rem; white-space: nowrap; }

@media (min-width: 601px) and (max-width: 960px) { .g-headerLogo_label > h1 { left: 32%; } }

@media (max-width: 600px) { .g-headerLogo_label > h1 { display: none; } }

.g-headerFunction { display: block; padding-top: 0; text-align: center; }

@media (max-width: 600px) { .g-headerFunction { padding-right: 48px; } }

.g-headerUtil_inner { padding: 0; }

.g-headerUtil_lang { padding-top: 18px; }

@media (max-width: 600px) { .g-headerUtil_lang { padding-top: 10px; } }

.g-headerUtil_langTrigger > a { padding: 3px 0 3px 32px; width: 170px; background: #7e7e7e url(../images/bg_select_lang.png) no-repeat 5px center; cursor: pointer; font-size: 18px; font-size: 1.8rem; }

@media (max-width: 600px) { .g-headerUtil_langTrigger > a { width: 36vw; font-size: 14px; font-size: 1.4rem; } }

.g-headerUtil_langTrigger > a:link, .g-headerUtil_langTrigger > a:hover, .g-headerUtil_langTrigger > a:visited, .g-headerUtil_langTrigger > a:active { color: #ffffff; }

.g-headerUtil_langTrigger > a:before { display: none; }

.g-headerNav { background-color: transparent; border: none; }

@media (min-width: 601px) { .g-headerNav_inner { position: relative; } }

@media (min-width: 601px) { .g-headerNav_list { position: absolute; left: 35.5%; top: 8px; display: block; width: 60%; height: auto; } }

@media (min-width: 601px) and (max-width: 960px) { .g-headerNav_list { left: 32%; width: 65%; top: 14px; } }

.g-headerNav_item { border: none; }

@media (min-width: 601px) { .g-headerNav_item { display: inline-block; margin-right: 12px; } }

@media (min-width: 601px) and (max-width: 960px) { .g-headerNav_item { margin-right: 0.6vw; } }

@media (max-width: 600px) { .g-headerNav_item { margin-top: 1px; } }

.g-headerNav_itemButton:hover { background-color: #2c2c2c; color: #fff; }

@media (min-width: 961px) { .g-headerNav_itemButton { background-color: transparent; font-size: 30px; font-size: 3rem; } }

@media (min-width: 601px) and (max-width: 960px) { .g-headerNav_itemButton { background-color: transparent; font-size: 21px; font-size: 2.1rem; } }

@media (max-width: 600px) { .g-headerNav_itemButton { padding: 0 .7em 0 1em; background-color: rgba(0, 0, 0, 0.8); font-size: 26px; font-size: 2.6rem; }
  .g-headerNav_itemButton:link, .g-headerNav_itemButton:visited, .g-headerNav_itemButton:active { color: #ffffff; }
  .g-headerNav_itemButton:hover { background-color: rgba(0, 0, 0, 0.8); }
  .g-headerNav_itemButton:before { display: none; } }

.g-headerNav_itemLabel { padding: 0 4px; line-height: 1.2; }

@media (min-width: 601px) and (max-width: 960px) { .g-headerNav_itemLabel { padding: 0 0.5vw; line-height: 1.5; } }

@media (max-width: 600px) { .g-headerNav_itemLabel { padding: .75em 0 .25em .4em; background: url(../images/bg_spnavi_button.png) no-repeat right bottom; background-size: 3% 30%; border-left: 1vw solid rgba(255, 255, 255, 0.3); } }

/* SP用メニュー */
@media (max-width: 600px) { .g-header_menu { padding: 0; background-color: transparent; } }

.g-headerButton { padding: 10px; width: 18vw; height: 18vw; text-align: right; }

.g-headerButton.g-headerButton-menu { background: url(../images/bg_spnavi.png) no-repeat right top; background-size: contain; }

.g-headerButton > a { line-height: normal; }

.g-headerButton-menu, .g-headerButton-close { right: 0; top: 0; }

.g-headerButton-menu > a, .g-headerButton-close > a { display: inline-block; width: auto; border: 1px solid #fff; border-radius: 4px; }

.g-headerButton-menu > a:before, .g-headerButton-close > a:before { color: #fff; font-size: 24px; font-size: 2.4rem; }

.gisr-headerSmall { display: none; }

.gisr-headerSmall:after { content: ""; display: block; clear: both; }

@media (max-width: 600px) { .gisr-headerSmall { display: block; position: relative; } }

.gisr-headerSmall_logoLabel { min-height: 0; display: table; }

.gisr-headerSmall_logoLabel > a { position: absolute; left: 1.7vw; top: 1.9vw; display: block; }

.gisr-headerSmall_logoLabel > a > img { display: block; width: 130px; height: auto; }

@media (max-width: 600px) { body.js-headerMenuOpen { overflow: hidden !important; }
  body.js-headerMenuOpen .gisr-header_menu { overflow-y: scroll; } }

/* =========================================================
  Footer
============================================================ */
.g-footer { background-color: #000; color: #949494; }

.gisr-footer_main { max-width: 1094px; margin: 0 auto; padding: 22px 12px 32px; }

.gisr-footer_main:after { content: ""; display: block; clear: both; }

.g-footer_inner { margin: 0; padding: 0; }

@media (min-width: 601px) { .gisr-footer_inner { float: left; } }

@media (max-width: 600px) { .gisr-footer_inner { text-align: center; } }

@media (min-width: 601px) { .g-footer_inner { float: right; } }

.g-footerUtil_sns { padding: 0 0 10px; border: none; }

@media (min-width: 601px) { .g-footerUtil_sns { text-align: right; } }

@media (max-width: 600px) { .g-footerUtil_sns { margin-top: 10px; } }

.g-footerUtil_snsLabel { display: inline-block; margin: 0 5px; vertical-align: middle; height: 32px; color: #fff; font-size: 20px; font-size: 2rem; line-height: 32px; }

.g-footerCopyright { font-size: 12px; font-size: 1.2rem; font-weight: normal; }

@media (min-width: 601px) { .g-footerCopyright { text-align: right; } }

@media (max-width: 600px) { .g-footerCopyright { font-size: 10px; font-size: 1rem; text-align: center; } }

.g-footerCopyright a { color: #949494; font-weight: 700; }

.g-footerCopyright a:link, .g-footerCopyright a:visited { text-decoration: underline; }

.g-footerCopyright a:hover, .g-footerCopyright a:active { text-decoration: none; }

.g-footerNote { margin-top: 0; font-size: 12px; font-size: 1.2rem; font-weight: normal; }

@media (min-width: 601px) { .g-footerNote { text-align: right; } }

@media (max-width: 600px) { .g-footerNote { font-size: 10px; font-size: 1rem; text-align: center; } }

/* =========================================================
  Main
============================================================ */
@media (min-width: 961px) { .g-body { padding-top: 100px; } }

@media (min-width: 601px) and (max-width: 960px) { .g-body { padding-top: 7%; } }

@media (max-width: 600px) { .g-body { padding-top: 105px; } }

.g-body_home { padding-top: 0; }

.g-body_home .g-content_inner { max-width: 984px; }

@media (max-width: 600px) { .g-pageSide { margin-top: 0; } }

.g-pageSide_content { margin-top: 0; }

.c-heading { padding: 10px 0 0 20px; }

.c-heading.gisr-heading_sub { padding: 23px 0 0 16px; }

.c-headingLv2 { border: none; }

@media (min-width: 601px) { .c-headingLv2 { height: 88px; } }

.c-headingLv2 .c-heading_text { font-size: 48px; font-size: 4.8rem; }

.c-headingLv2 + div, .c-headingLv2 + p { margin-top: 3px; }

.c-image { margin-top: 0; }

.c-text { margin-top: 0; }

.c-video_main object { position: absolute; top: 0; right: 0; width: 100%; height: 100%; }

.c-banner_main a:hover { opacity: .7; }

.c-share { display: inline-block; margin-top: 0; }

.g-footerUtil_snsRenren { background-image: url(../images/ico_sns_renren.png); cursor: pointer; }

.g-footerUtil_snsSina { background-image: url(../images/ico_sns_sina.png); cursor: pointer; }

.g-footerUtil_snsPlurk { background-image: url(../images/ico_sns_plurk.png); cursor: pointer; }

.c-tab { margin-top: 0; }

.c-tab.gisr-tab_staff { padding: 30px; background-color: rgba(255, 255, 255, 0.85); }

@media (max-width: 600px) { .c-tab.gisr-tab_staff { padding: 2rem; } }

.c-tab_tabs li { padding-right: 10px; }

.c-tab_tabs li:last-child { padding-right: 0; padding-left: 10px; }

.c-tab_tabsItem { background: none; border: none; }

.c-tab_tabsItem > a { padding: 0; background-color: #fff; border: 2px solid #808080; color: #808080; font-size: 32px; font-size: 3.2rem; line-height: 1; }

@media (max-width: 600px) { .c-tab_tabsItem > a { font-size: 20px; font-size: 2rem; padding-top: 9px; } }

.c-tab_tabsItem > a:before { display: inline-block; margin-right: 10px; content: url(../images/ico_tab.png); width: 26px; height: 26px; }

.c-tab_tabsItem > a:hover { background-color: #808080; color: #fff; }

.c-tab_tabsItem > a:hover:before { content: url(../images/ico_tab_on.png); }

.c-tab_tabsItem.-active > a { background-color: #808080; color: #fff; }

.c-tab_tabsItem.-active > a:before { content: url(../images/ico_tab_on.png); }

.c-tab_contents { margin-top: 20px; background-color: transparent; border: none; }

.c-tab.gisr-tab_chara .c-tab_tabsItem { border: none; }

.c-tab.gisr-tab_chara .c-tab_tabsItem > a { height: 50px; border: none; line-height: 1.5; }

.c-tab.gisr-tab_chara .c-tab_tabsItem > a:before { display: none; }

.c-tab.gisr-tab_chara .c-tab_tabs li { padding: 0; }

.c-tab.gisr-tab_chara .c-tab_tabs li:first-child a { background: url(../images/bg_tab_chara_left_off.png) no-repeat left center; }

.c-tab.gisr-tab_chara .c-tab_tabs li:first-child a:hover { background: url(../images/bg_tab_chara_left_hover.png) no-repeat left center; }

.c-tab.gisr-tab_chara .c-tab_tabs li:first-child.-active a { background: url(../images/bg_tab_chara_left_on.png) no-repeat left center; }

.c-tab.gisr-tab_chara .c-tab_tabs li:last-child a { background: url(../images/bg_tab_chara_right_off.png) no-repeat right center; }

.c-tab.gisr-tab_chara .c-tab_tabs li:last-child a:hover { background: url(../images/bg_tab_chara_right_hover.png) no-repeat right center; }

.c-tab.gisr-tab_chara .c-tab_tabs li:last-child.-active a { background: url(../images/bg_tab_chara_right_on.png) no-repeat right center; }

.c-table_inner { white-space: normal; }

.c-table_cell { padding: 1.5rem .1rem 1.5rem 3rem; border-color: #d2d2d2; border-left: none; border-right: none; }

@media (max-width: 600px) { .c-table_cell { padding: 1rem .8rem 1rem 0; } }

.c-table_tbodyHeader { background-color: transparent; width: 25%; font-size: 18px; font-size: 1.8rem; }

@media (max-width: 600px) { .c-table_tbodyHeader { font-size: 14px; font-size: 1.4rem; } }

.c-table_tbodyData { font-size: 26px; font-size: 2.6rem; }

@media (max-width: 600px) { .c-table_tbodyData { font-size: 20px; font-size: 2rem; } }

.gifl-headerUtil_langItem a:hover, .gifl-headerUtil_langItem a:active { color: #333; text-decoration: underline; }

.gifl-headerUtil_langItem { margin: 0; font-size: 14px; text-align: center; line-height: 2.3; }

.gifl-headerUtil_langItem.-active > a, .gifl-headerUtil_langItem.-active > span { font-weight: 700; }

.gifl-headerUtil_langItem.-active > a:before, .gifl-headerUtil_langItem.-active > span:before { font-family: icon; color: #000; display: inline-block; vertical-align: top; speak: none; font-size: 1.5em; font-weight: 400; font-style: normal; text-decoration: none; font-variant: normal; text-transform: none; white-space: pre-wrap; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: ""; line-height: 1.5; text-indent: -1em; }

a:hover .gifl-headerUtil_langItem.-active > a:before, a:hover .gifl-headerUtil_langItem.-active > span:before { text-decoration: none; }

.gifl-headerUtil_langItem.-active > a:before:hover, .gifl-headerUtil_langItem.-active > span:before:hover { text-decoration: none; }

.gisr-heading { background: url(../images/bg_heading_main_top.png) no-repeat center top; color: #333; }

.gisr-heading_sub { background: url(../images/bg_heading_sub_top.png) no-repeat center top; color: #333; }

.gisr-heading_story { background: url(../images/bg_heading_story_top.png) no-repeat center top; }

.gisr-heading_staff { background: url(../images/bg_heading_1col_top.png) no-repeat center top; color: #333; }

.gisr-container { margin-top: 24px; padding-bottom: 51px; background: url(../images/bg_heading_main_bottom.png) no-repeat center bottom; }

.gisr-container .c-text_story { background-color: rgba(255, 255, 255, 0.85); font-weight: normal; font-size: 20px; font-size: 2rem; font-family: "Arial"; }

@media (min-width: 601px) { .gisr-container .c-text_story { padding: 4rem; background: url(../images/bg_text_top.png) no-repeat left top, url(../images/bg_text_bottom.png) no-repeat right bottom; background-color: rgba(255, 255, 255, 0.85); } }

@media (max-width: 600px) { .gisr-container .c-text_story { padding: 2rem; } }

.gisr-container_sub { padding-bottom: 53px; background: url(../images/bg_heading_sub_bottom.png) no-repeat center bottom; }

@media (min-width: 601px) and (max-width: 960px) { .gisr-container_sub { width: 288px; } }

@media (max-width: 600px) { .gisr-container_sub { width: 288px; } }

.gisr-container_bnr { padding: 40px 0; background: url(../images/bg_col_sub_top.png) no-repeat center top, url(../images/bg_col_sub_bottom.png) no-repeat center bottom; }

@media (min-width: 601px) and (max-width: 960px) { .gisr-container_bnr { width: 288px; } }

@media (max-width: 600px) { .gisr-container_bnr { width: 288px; } }

.gisr-container_bnr .c-banner { margin-top: 0; background-color: rgba(255, 255, 255, 0.85); }

.gisr-container_bnr .c-banner_main { border: 2px solid #808080; }

.gisr-container_bnr > div .c-banner_inner { padding-top: 10px; }

.gisr-container_bnr > div:first-child .c-banner_inner { padding-top: 0; }

.gisr-container_story { margin-top: 30px; background: url(../images/bg_heading_story_bottom.png) no-repeat center bottom; }

.gisr-container_story .c-text { padding: 4rem; background-color: rgba(0, 0, 0, 0.2); color: #fff; font-weight: normal; font-size: 20px; font-size: 2rem; font-family: "Arial"; }

@media (min-width: 601px) { .gisr-container_story .c-text { background: url(../images/bg_text_story_top.png) no-repeat left top, url(../images/bg_text_story_bottom.png) no-repeat right bottom; background-color: rgba(0, 0, 0, 0.2); } }

@media (max-width: 600px) { .gisr-container_story .c-text { padding: 2rem; } }

.gisr-container_staff { margin-top: 10px; background: url(../images/bg_heading_1col_bottom.png) no-repeat center bottom; }

.gisr-container_staff .c-tab { margin-top: 3px; }

.gisr-container_detail { background-color: rgba(255, 255, 255, 0.85); }

@media (min-width: 601px) { .gisr-container_detail { padding: 30px; } }

@media (max-width: 600px) { .gisr-container_detail { padding: 2rem; } }

.gisr-container_detail .c-headingLv3 { padding: 0; border: none; background-color: transparent; }

.gisr-container_detail .c-headingLv3 .c-heading_text { font-size: 48px; font-size: 4.8rem; line-height: 1em; }

.gisr-container_detail .c-text { margin-top: .8em; font-weight: normal; font-size: 15px; font-size: 1.5rem; font-family: "Arial"; }

.gisr-container_detail .c-tab { margin-top: 1.5em; }

.gisr-container_detail .c-link { margin-top: 24px; }

.gisr-container_detail .c-link .l-rowCol_inner { text-align: center; }

.gisr-container_detail .c-link .l-rowCol_item { padding-bottom: .2em; min-width: 130px; background: url(../images/bg_btn_back.png) no-repeat center bottom; font-size: 18px; font-size: 1.8rem; text-align: center; }

.gisr-container_detail .c-link .c-link_item:hover { color: #999; text-decoration: none; }

.gisr-itemlist { background-color: rgba(255, 255, 255, 0.85); }

@media (min-width: 601px) { .gisr-itemlist { padding: 48px 30px 30px; background: url(../images/bg_list.png) no-repeat center top; background-color: rgba(255, 255, 255, 0.85); } }

@media (max-width: 600px) { .gisr-itemlist { padding: 2rem; } }

.gisr-itemlist_chara .l-linkContainer { position: relative; }

.gisr-itemlist_chara .l-linkContainer .c-text { position: absolute; text-align: right; line-height: 1em; }

@media (min-width: 601px) { .gisr-itemlist_chara .l-linkContainer .c-text { bottom: 7px; right: 8px; font-size: 32px; font-size: 3.2rem; } }

@media (max-width: 600px) { .gisr-itemlist_chara .l-linkContainer .c-text { bottom: .6rem; right: .7rem; font-size: 24px; font-size: 2.4rem; } }

.gisr-itemlist_chara .l-linkContainer_link:link, .gisr-itemlist_chara .l-linkContainer_link:visited { color: #fff; }

@media (min-width: 961px) { .gisr-itemlist_chara .l-linkContainer_link:hover, .gisr-itemlist_chara .l-linkContainer_link:active { color: #666; } }

.gisr-itemlist_ms .c-text { margin-top: .3rem; padding-left: .5rem; border-left: 4px solid #666; }

@media (min-width: 601px) { .gisr-itemlist_ms .c-text { font-size: 16px; font-size: 1.6rem; } }

@media (max-width: 600px) { .gisr-itemlist_ms .c-text { font-size: 14px; font-size: 1.4rem; } }

@media (min-width: 961px) { .gisr-itemlist_ms .l-linkContainer_link:hover .c-text { background-color: #666; color: #fff; } }

@media (min-width: 961px) { .gisr-itemlist .l-linkContainer_link:hover .c-image { overflow: hidden; border: 5px solid #666; }
  .gisr-itemlist .l-linkContainer_link:hover .c-image img { margin: -5px; width: auto; max-width: none; } }

.gisr-container_detail > .c-image { margin-top: 1rem; }

@font-face { font-family: icon; src: url(../fonts/icon.eot?92771938); src: url(../fonts/icon.eot?92771938#iefix) format("embedded-opentype"), url(../fonts/icon.woff?92771938) format("woff"), url(../fonts/icon.ttf?92771938) format("truetype"), url(../fonts/icon.svg?92771938#fontello) format("svg"); font-weight: 400; font-style: normal; }
